TPTP Problem File: ITP158^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : ITP158^1 : TPTP v8.2.0. Released v7.5.0.
% Domain   : Interactive Theorem Proving
% Problem  : Sledgehammer Prover problem prob_480__3258466_1
% Version  : Especial.
% English  :

% Refs     : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
%          : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% Source   : [Des21]
% Names    : Prover/prob_480__3258466_1 [Des21]

% Status   : Theorem
% Rating   : 0.70 v8.2.0, 0.62 v8.1.0, 0.73 v7.5.0
% Syntax   : Number of formulae    :  505 ( 173 unt; 145 typ;   0 def)
%            Number of atoms       :  933 ( 580 equ;   0 cnn)
%            Maximal formula atoms :    7 (   2 avg)
%            Number of connectives : 4078 ( 227   ~;  32   |; 133   &;3240   @)
%                                         (   0 <=>; 446  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   19 (   8 avg)
%            Number of types       :   38 (  37 usr)
%            Number of type conns  :  389 ( 389   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  111 ( 108 usr;  13 con; 0-3 aty)
%            Number of variables   : 1360 (   8   ^;1213   !; 139   ?;1360   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Sledgehammer 2021-02-23 15:35:33.970
%------------------------------------------------------------------------------
% Could-be-implicit typings (37)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_J_Mt__List__Olist_I_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J_J_J,type,
    set_Pr2099245410le_U_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_J_Mt__List__Olist_I_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J_J,type,
    produc622718850le_U_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Prover____Mirabelle____icshcajtjh__Oform_M_062_It__Prover____Mirabelle____icshcajtjh__Oform_M_Eo_J_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    produc957084248e_form: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_M_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J_J,type,
    set_Pr1072215906le_U_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_M_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J,type,
    produc227817602le_U_o: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J_J,type,
    set_Pr31825690e_form: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    produc791938916e_form: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr1057005944st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J_J,type,
    set_Pr1174364408e_form: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    set_Pr1189404964e_form: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc1473535256st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    produc1494932632e_form: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    produc825256814e_form: $tType ).

thf(ty_n_t__List__Olist_I_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J,type,
    list_n2139828004le_U_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc890077173st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
    set_Pr1560408065st_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Nat__Onat_J_J,type,
    set_Pr957084504rm_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    set_Pr816919384e_form: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    produc1699244961st_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Nat__Onat_J,type,
    produc117678584rm_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    produc1296622072e_form: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    list_l461858535e_form: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    set_li5074317e_form: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_J,type,
    list_s1200803384elle_U: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    set_Pr1986765409at_nat: $tType ).

thf(ty_n_t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    list_P512754263e_form: $tType ).

thf(ty_n_t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    set_Pr554570749e_form: $tType ).

thf(ty_n_t__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J,type,
    list_P796095576elle_U: $tType ).

thf(ty_n_t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J,type,
    set_Pr619177522elle_U: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
    list_list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
    set_list_nat: $tType ).

thf(ty_n_t__Prover____Mirabelle____icshcajtjh__Oform,type,
    prover1687215943e_form: $tType ).

thf(ty_n_t__Prover____Mirabelle____icshcajtjh__OU,type,
    prover_Mirabelle_U: $tType ).

thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
    list_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

% Explicit typings (108)
thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_If_001t__List__Olist_It__Nat__Onat_J,type,
    if_list_nat: $o > list_nat > list_nat > list_nat ).

thf(sy_c_If_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    if_lis1812881937e_form: $o > list_P512754263e_form > list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Nat__Onat_J,type,
    append_list_nat: list_list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    append1797078012e_form: list_l461858535e_form > list_l461858535e_form > list_l461858535e_form ).

thf(sy_c_List_Oappend_001t__Nat__Onat,type,
    append_nat: list_nat > list_nat > list_nat ).

thf(sy_c_List_Oappend_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    append1038020460e_form: list_P512754263e_form > list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Obind_001t__Nat__Onat_001t__Nat__Onat,type,
    bind_nat_nat: list_nat > ( nat > list_nat ) > list_nat ).

thf(sy_c_List_Obind_001t__Nat__Onat_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    bind_n1193922848e_form: list_nat > ( nat > list_P512754263e_form ) > list_P512754263e_form ).

thf(sy_c_List_Obind_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Nat__Onat,type,
    bind_P1359331232rm_nat: list_P512754263e_form > ( prover1687215943e_form > list_nat ) > list_nat ).

thf(sy_c_List_Obind_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    bind_P1054726576e_form: list_P512754263e_form > ( prover1687215943e_form > list_P512754263e_form ) > list_P512754263e_form ).

thf(sy_c_List_Obutlast_001t__Nat__Onat,type,
    butlast_nat: list_nat > list_nat ).

thf(sy_c_List_Obutlast_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    butlas664258165e_form: list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Ocan__select_001t__Nat__Onat,type,
    can_select_nat: ( nat > $o ) > set_nat > $o ).

thf(sy_c_List_Oconcat_001t__Nat__Onat,type,
    concat_nat: list_list_nat > list_nat ).

thf(sy_c_List_Oconcat_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    concat1664984646e_form: list_l461858535e_form > list_P512754263e_form ).

thf(sy_c_List_Oinsert_001t__Nat__Onat,type,
    insert_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Oinsert_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    insert697320747e_form: prover1687215943e_form > list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Olast_001t__Nat__Onat,type,
    last_nat: list_nat > nat ).

thf(sy_c_List_Olast_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    last_P1811260776e_form: list_P512754263e_form > prover1687215943e_form ).

thf(sy_c_List_Olenlex_001t__Nat__Onat,type,
    lenlex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).

thf(sy_c_List_Olenlex_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    lenlex1927129340e_form: set_Pr1189404964e_form > set_Pr31825690e_form ).

thf(sy_c_List_Olex_001t__Nat__Onat,type,
    lex_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).

thf(sy_c_List_Olex_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    lex_Pr233218909e_form: set_Pr1189404964e_form > set_Pr31825690e_form ).

thf(sy_c_List_Olexord_001t__Nat__Onat,type,
    lexord_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).

thf(sy_c_List_Olexord_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    lexord1848469012e_form: set_Pr1189404964e_form > set_Pr31825690e_form ).

thf(sy_c_List_Olist_OCons_001_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J,type,
    cons_n50929118le_U_o: ( nat > list_P796095576elle_U > $o ) > list_n2139828004le_U_o > list_n2139828004le_U_o ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
    cons_list_nat: list_nat > list_list_nat > list_list_nat ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    cons_l1379921697e_form: list_P512754263e_form > list_l461858535e_form > list_l461858535e_form ).

thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
    cons_nat: nat > list_nat > list_nat ).

thf(sy_c_List_Olist_OCons_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    cons_P1475164433e_form: prover1687215943e_form > list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Olist_OCons_001t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J,type,
    cons_s32021736elle_U: set_Pr619177522elle_U > list_s1200803384elle_U > list_s1200803384elle_U ).

thf(sy_c_List_Olist_ONil_001_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J,type,
    nil_na1584420238le_U_o: list_n2139828004le_U_o ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
    nil_list_nat: list_list_nat ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    nil_li1393862353e_form: list_l461858535e_form ).

thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
    nil_nat: list_nat ).

thf(sy_c_List_Olist_ONil_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    nil_Pr1384483009e_form: list_P512754263e_form ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J,type,
    nil_se944326968elle_U: list_s1200803384elle_U ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Nat__Onat_J,type,
    set_list_nat2: list_list_nat > set_list_nat ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    set_li1219651714e_form: list_l461858535e_form > set_li5074317e_form ).

thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
    set_nat2: list_nat > set_nat ).

thf(sy_c_List_Olist_Oset_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    set_Pr1105237746e_form: list_P512754263e_form > set_Pr554570749e_form ).

thf(sy_c_List_Olist__ex1_001t__Nat__Onat,type,
    list_ex1_nat: ( nat > $o ) > list_nat > $o ).

thf(sy_c_List_Olist__ex1_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    list_e2123636798e_form: ( prover1687215943e_form > $o ) > list_P512754263e_form > $o ).

thf(sy_c_List_Olistrel1_001t__Nat__Onat,type,
    listrel1_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).

thf(sy_c_List_Olistrel1_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    listre502458152e_form: set_Pr1189404964e_form > set_Pr31825690e_form ).

thf(sy_c_List_Olistrel_001t__Nat__Onat_001t__Nat__Onat,type,
    listrel_nat_nat: set_Pr1986765409at_nat > set_Pr1560408065st_nat ).

thf(sy_c_List_Olistrel_001t__Nat__Onat_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    listre318297994e_form: set_Pr816919384e_form > set_Pr1174364408e_form ).

thf(sy_c_List_Olistrel_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Nat__Onat,type,
    listre483706378rm_nat: set_Pr957084504rm_nat > set_Pr1057005944st_nat ).

thf(sy_c_List_Olistrel_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    listre1908795590e_form: set_Pr1189404964e_form > set_Pr31825690e_form ).

thf(sy_c_List_Olistrel_001t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_001_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J,type,
    listre290852044le_U_o: set_Pr1072215906le_U_o > set_Pr2099245410le_U_o ).

thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Nat__Onat,type,
    maps_nat_nat: ( nat > list_nat ) > list_nat > list_nat ).

thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    maps_n1383976154e_form: ( nat > list_P512754263e_form ) > list_nat > list_P512754263e_form ).

thf(sy_c_List_Omaps_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Nat__Onat,type,
    maps_P1549384538rm_nat: ( prover1687215943e_form > list_nat ) > list_P512754263e_form > list_nat ).

thf(sy_c_List_Omaps_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    maps_P2058952566e_form: ( prover1687215943e_form > list_P512754263e_form ) > list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Oproduct__lists_001t__Nat__Onat,type,
    product_lists_nat: list_list_nat > list_list_nat ).

thf(sy_c_List_Oproduct__lists_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    produc168439576e_form: list_l461858535e_form > list_l461858535e_form ).

thf(sy_c_List_Orotate1_001t__Nat__Onat,type,
    rotate1_nat: list_nat > list_nat ).

thf(sy_c_List_Orotate1_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    rotate650061876e_form: list_P512754263e_form > list_P512754263e_form ).

thf(sy_c_List_Osubseqs_001t__Nat__Onat,type,
    subseqs_nat: list_nat > list_list_nat ).

thf(sy_c_List_Osubseqs_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    subseq1471997234e_form: list_P512754263e_form > list_l461858535e_form ).

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc939441135st_nat: ( nat > nat > $o ) > list_nat > produc890077173st_nat ).

thf(sy_c_Product__Type_OPair_001_062_It__Prover____Mirabelle____icshcajtjh__Oform_M_062_It__Prover____Mirabelle____icshcajtjh__Oform_M_Eo_J_J_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    produc54611594e_form: ( prover1687215943e_form > prover1687215943e_form > $o ) > list_P512754263e_form > produc957084248e_form ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc1625736153st_nat: list_nat > list_nat > produc1699244961st_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    produc1617574096e_form: list_nat > list_P512754263e_form > produc1494932632e_form ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_001t__List__Olist_It__Nat__Onat_J,type,
    produc1897654224st_nat: list_P512754263e_form > list_nat > produc1473535256st_nat ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    produc891809686e_form: list_P512754263e_form > list_P512754263e_form > produc791938916e_form ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_J_001t__List__Olist_I_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J,type,
    produc1377086578le_U_o: list_s1200803384elle_U > list_n2139828004le_U_o > produc622718850le_U_o ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    produc876465968e_form: nat > prover1687215943e_form > produc1296622072e_form ).

thf(sy_c_Product__Type_OPair_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Nat__Onat,type,
    produc1041874352rm_nat: prover1687215943e_form > nat > produc117678584rm_nat ).

thf(sy_c_Product__Type_OPair_001t__Prover____Mirabelle____icshcajtjh__Oform_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    produc1018812320e_form: prover1687215943e_form > prover1687215943e_form > produc825256814e_form ).

thf(sy_c_Product__Type_OPair_001t__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_001_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J,type,
    produc1069574002le_U_o: set_Pr619177522elle_U > ( nat > list_P796095576elle_U > $o ) > produc227817602le_U_o ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_OSEval,type,
    prover1282070756_SEval: produc227817602le_U_o > ( nat > prover_Mirabelle_U ) > list_P512754263e_form > $o ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_OSvalid,type,
    prover1539709396Svalid: list_P512754263e_form > $o ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Ofinst,type,
    prover1577896257_finst: prover1687215943e_form > nat > prover1687215943e_form ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Oflatten_001t__Nat__Onat,type,
    prover886976490en_nat: list_list_nat > list_nat ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Oflatten_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    prover542312166e_form: list_l461858535e_form > list_P512754263e_form ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Oform_OFAll,type,
    prover571163162e_FAll: prover1687215943e_form > prover1687215943e_form ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Ofv,type,
    prover_Mirabelle_fv: prover1687215943e_form > list_nat ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Ois__env,type,
    prover1847600056is_env: produc227817602le_U_o > ( nat > prover_Mirabelle_U ) > $o ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Omaxvar,type,
    prover1021675886maxvar: list_nat > nat ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_OpreSuc,type,
    prover2096325705preSuc: list_nat > list_nat ).

thf(sy_c_Prover__Mirabelle__icshcajtjh_Osfv,type,
    prover_Mirabelle_sfv: list_P512754263e_form > list_nat ).

thf(sy_c_Relation_Oirrefl_001t__Nat__Onat,type,
    irrefl_nat: set_Pr1986765409at_nat > $o ).

thf(sy_c_Relation_Oirrefl_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    irrefl2121388754e_form: set_Pr1189404964e_form > $o ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_Othe__elem_001t__Nat__Onat,type,
    the_elem_nat: set_nat > nat ).

thf(sy_c_Set_Othe__elem_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    the_el969789074e_form: set_Pr554570749e_form > prover1687215943e_form ).

thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
    member_list_nat: list_nat > set_list_nat > $o ).

thf(sy_c_member_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    member1828782574e_form: list_P512754263e_form > set_li5074317e_form > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member1926390090st_nat: produc1699244961st_nat > set_Pr1560408065st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    member1471151041e_form: produc1494932632e_form > set_Pr1174364408e_form > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
    member1449753665st_nat: produc1473535256st_nat > set_Pr1057005944st_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_Mt__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_J,type,
    member650892795e_form: produc791938916e_form > set_Pr31825690e_form > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_J_Mt__List__Olist_I_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J_J,type,
    member493452075le_U_o: produc622718850le_U_o > set_Pr2099245410le_U_o > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    member701585322at_nat: product_prod_nat_nat > set_Pr1986765409at_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    member18158113e_form: produc1296622072e_form > set_Pr816919384e_form > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Nat__Onat_J,type,
    member986698273rm_nat: produc117678584rm_nat > set_Pr957084504rm_nat > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Prover____Mirabelle____icshcajtjh__Oform_Mt__Prover____Mirabelle____icshcajtjh__Oform_J,type,
    member189065477e_form: produc825256814e_form > set_Pr1189404964e_form > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Set__Oset_It__Prover____Mirabelle____icshcajtjh__OU_J_M_062_It__Nat__Onat_M_062_It__List__Olist_It__Prover____Mirabelle____icshcajtjh__OU_J_M_Eo_J_J_J,type,
    member1933006123le_U_o: produc227817602le_U_o > set_Pr1072215906le_U_o > $o ).

thf(sy_c_member_001t__Prover____Mirabelle____icshcajtjh__Oform,type,
    member1793840734e_form: prover1687215943e_form > set_Pr554570749e_form > $o ).

thf(sy_v_a,type,
    a: set_Pr619177522elle_U ).

thf(sy_v_b,type,
    b: nat > list_P796095576elle_U > $o ).

thf(sy_v_f,type,
    f: prover1687215943e_form ).

thf(sy_v_s,type,
    s: list_P512754263e_form ).

thf(sy_v_u,type,
    u: nat ).

% Relevant facts (352)
thf(fact_0_form_Oinject_I5_J,axiom,
    ! [X5: prover1687215943e_form,Y5: prover1687215943e_form] :
      ( ( ( prover571163162e_FAll @ X5 )
        = ( prover571163162e_FAll @ Y5 ) )
      = ( X5 = Y5 ) ) ).

% form.inject(5)
thf(fact_1_SEval_Osimps_I1_J,axiom,
    ! [M: produc227817602le_U_o,E: nat > prover_Mirabelle_U] :
      ~ ( prover1282070756_SEval @ M @ E @ nil_Pr1384483009e_form ) ).

% SEval.simps(1)
thf(fact_2_SEval__cong,axiom,
    ! [S: list_P512754263e_form,E1: nat > prover_Mirabelle_U,E2: nat > prover_Mirabelle_U,M: produc227817602le_U_o] :
      ( ! [X: nat] :
          ( ( member_nat @ X @ ( set_nat2 @ ( prover_Mirabelle_sfv @ S ) ) )
         => ( ( E1 @ X )
            = ( E2 @ X ) ) )
     => ( ( prover1282070756_SEval @ M @ E1 @ S )
        = ( prover1282070756_SEval @ M @ E2 @ S ) ) ) ).

% SEval_cong
thf(fact_3_SEval__append,axiom,
    ! [M: produc227817602le_U_o,E: nat > prover_Mirabelle_U,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( prover1282070756_SEval @ M @ E @ ( append1038020460e_form @ Xs @ Ys ) )
      = ( ( prover1282070756_SEval @ M @ E @ Xs )
        | ( prover1282070756_SEval @ M @ E @ Ys ) ) ) ).

% SEval_append
thf(fact_4_sound__FAll,axiom,
    ! [U: nat,F: prover1687215943e_form,S: list_P512754263e_form] :
      ( ~ ( member_nat @ U @ ( set_nat2 @ ( prover_Mirabelle_sfv @ ( cons_P1475164433e_form @ ( prover571163162e_FAll @ F ) @ S ) ) ) )
     => ( ( prover1539709396Svalid @ ( append1038020460e_form @ S @ ( cons_P1475164433e_form @ ( prover1577896257_finst @ F @ U ) @ nil_Pr1384483009e_form ) ) )
       => ( prover1539709396Svalid @ ( cons_P1475164433e_form @ ( prover571163162e_FAll @ F ) @ S ) ) ) ) ).

% sound_FAll
thf(fact_5_append1__eq__conv,axiom,
    ! [Xs: list_nat,X2: nat,Ys: list_nat,Y: nat] :
      ( ( ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) )
        = ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
      = ( ( Xs = Ys )
        & ( X2 = Y ) ) ) ).

% append1_eq_conv
thf(fact_6_append1__eq__conv,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form,Ys: list_P512754263e_form,Y: prover1687215943e_form] :
      ( ( ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) )
        = ( append1038020460e_form @ Ys @ ( cons_P1475164433e_form @ Y @ nil_Pr1384483009e_form ) ) )
      = ( ( Xs = Ys )
        & ( X2 = Y ) ) ) ).

% append1_eq_conv
thf(fact_7_append__Nil2,axiom,
    ! [Xs: list_P512754263e_form] :
      ( ( append1038020460e_form @ Xs @ nil_Pr1384483009e_form )
      = Xs ) ).

% append_Nil2
thf(fact_8_append__Nil2,axiom,
    ! [Xs: list_nat] :
      ( ( append_nat @ Xs @ nil_nat )
      = Xs ) ).

% append_Nil2
thf(fact_9_append__self__conv,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_Pr1384483009e_form ) ) ).

% append_self_conv
thf(fact_10_append__self__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Xs )
      = ( Ys = nil_nat ) ) ).

% append_self_conv
thf(fact_11_self__append__conv,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( Xs
        = ( append1038020460e_form @ Xs @ Ys ) )
      = ( Ys = nil_Pr1384483009e_form ) ) ).

% self_append_conv
thf(fact_12_self__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs
        = ( append_nat @ Xs @ Ys ) )
      = ( Ys = nil_nat ) ) ).

% self_append_conv
thf(fact_13_append__self__conv2,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_Pr1384483009e_form ) ) ).

% append_self_conv2
thf(fact_14_append__self__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = Ys )
      = ( Xs = nil_nat ) ) ).

% append_self_conv2
thf(fact_15_self__append__conv2,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( Ys
        = ( append1038020460e_form @ Xs @ Ys ) )
      = ( Xs = nil_Pr1384483009e_form ) ) ).

% self_append_conv2
thf(fact_16_self__append__conv2,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( Ys
        = ( append_nat @ Xs @ Ys ) )
      = ( Xs = nil_nat ) ) ).

% self_append_conv2
thf(fact_17_Nil__is__append__conv,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( nil_Pr1384483009e_form
        = ( append1038020460e_form @ Xs @ Ys ) )
      = ( ( Xs = nil_Pr1384483009e_form )
        & ( Ys = nil_Pr1384483009e_form ) ) ) ).

% Nil_is_append_conv
thf(fact_18_Nil__is__append__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( nil_nat
        = ( append_nat @ Xs @ Ys ) )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% Nil_is_append_conv
thf(fact_19_append__is__Nil__conv,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Ys )
        = nil_Pr1384483009e_form )
      = ( ( Xs = nil_Pr1384483009e_form )
        & ( Ys = nil_Pr1384483009e_form ) ) ) ).

% append_is_Nil_conv
thf(fact_20_append__is__Nil__conv,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = nil_nat )
      = ( ( Xs = nil_nat )
        & ( Ys = nil_nat ) ) ) ).

% append_is_Nil_conv
thf(fact_21_append_Oright__neutral,axiom,
    ! [A: list_P512754263e_form] :
      ( ( append1038020460e_form @ A @ nil_Pr1384483009e_form )
      = A ) ).

% append.right_neutral
thf(fact_22_append_Oright__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ A @ nil_nat )
      = A ) ).

% append.right_neutral
thf(fact_23_Svalid__def,axiom,
    ( prover1539709396Svalid
    = ( ^ [S2: list_P512754263e_form] :
        ! [MI: produc227817602le_U_o,E3: nat > prover_Mirabelle_U] :
          ( ( prover1847600056is_env @ MI @ E3 )
         => ( prover1282070756_SEval @ MI @ E3 @ S2 ) ) ) ) ).

% Svalid_def
thf(fact_24_split__list,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
     => ? [Ys2: list_P512754263e_form,Zs: list_P512754263e_form] :
          ( Xs
          = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X2 @ Zs ) ) ) ) ).

% split_list
thf(fact_25_split__list,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs: list_nat] :
          ( Xs
          = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs ) ) ) ) ).

% split_list
thf(fact_26_list_Oinject,axiom,
    ! [X21: prover1687215943e_form,X22: list_P512754263e_form,Y21: prover1687215943e_form,Y22: list_P512754263e_form] :
      ( ( ( cons_P1475164433e_form @ X21 @ X22 )
        = ( cons_P1475164433e_form @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_27_list_Oinject,axiom,
    ! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
      ( ( ( cons_nat @ X21 @ X22 )
        = ( cons_nat @ Y21 @ Y22 ) )
      = ( ( X21 = Y21 )
        & ( X22 = Y22 ) ) ) ).

% list.inject
thf(fact_28_same__append__eq,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Ys )
        = ( append1038020460e_form @ Xs @ Zs2 ) )
      = ( Ys = Zs2 ) ) ).

% same_append_eq
thf(fact_29_same__append__eq,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Xs @ Zs2 ) )
      = ( Ys = Zs2 ) ) ).

% same_append_eq
thf(fact_30_append__same__eq,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Ys @ Xs )
        = ( append1038020460e_form @ Zs2 @ Xs ) )
      = ( Ys = Zs2 ) ) ).

% append_same_eq
thf(fact_31_append__same__eq,axiom,
    ! [Ys: list_nat,Xs: list_nat,Zs2: list_nat] :
      ( ( ( append_nat @ Ys @ Xs )
        = ( append_nat @ Zs2 @ Xs ) )
      = ( Ys = Zs2 ) ) ).

% append_same_eq
thf(fact_32_append__assoc,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( append1038020460e_form @ ( append1038020460e_form @ Xs @ Ys ) @ Zs2 )
      = ( append1038020460e_form @ Xs @ ( append1038020460e_form @ Ys @ Zs2 ) ) ) ).

% append_assoc
thf(fact_33_append__assoc,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( append_nat @ ( append_nat @ Xs @ Ys ) @ Zs2 )
      = ( append_nat @ Xs @ ( append_nat @ Ys @ Zs2 ) ) ) ).

% append_assoc
thf(fact_34_append_Oassoc,axiom,
    ! [A: list_P512754263e_form,B: list_P512754263e_form,C: list_P512754263e_form] :
      ( ( append1038020460e_form @ ( append1038020460e_form @ A @ B ) @ C )
      = ( append1038020460e_form @ A @ ( append1038020460e_form @ B @ C ) ) ) ).

% append.assoc
thf(fact_35_append_Oassoc,axiom,
    ! [A: list_nat,B: list_nat,C: list_nat] :
      ( ( append_nat @ ( append_nat @ A @ B ) @ C )
      = ( append_nat @ A @ ( append_nat @ B @ C ) ) ) ).

% append.assoc
thf(fact_36_not__Cons__self2,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( cons_P1475164433e_form @ X2 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_37_not__Cons__self2,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( cons_nat @ X2 @ Xs )
     != Xs ) ).

% not_Cons_self2
thf(fact_38_sfv__nil,axiom,
    ( ( prover_Mirabelle_sfv @ nil_Pr1384483009e_form )
    = nil_nat ) ).

% sfv_nil
thf(fact_39_append__eq__append__conv2,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form,Ts: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Ys )
        = ( append1038020460e_form @ Zs2 @ Ts ) )
      = ( ? [Us: list_P512754263e_form] :
            ( ( ( Xs
                = ( append1038020460e_form @ Zs2 @ Us ) )
              & ( ( append1038020460e_form @ Us @ Ys )
                = Ts ) )
            | ( ( ( append1038020460e_form @ Xs @ Us )
                = Zs2 )
              & ( Ys
                = ( append1038020460e_form @ Us @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_40_append__eq__append__conv2,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat,Ts: list_nat] :
      ( ( ( append_nat @ Xs @ Ys )
        = ( append_nat @ Zs2 @ Ts ) )
      = ( ? [Us: list_nat] :
            ( ( ( Xs
                = ( append_nat @ Zs2 @ Us ) )
              & ( ( append_nat @ Us @ Ys )
                = Ts ) )
            | ( ( ( append_nat @ Xs @ Us )
                = Zs2 )
              & ( Ys
                = ( append_nat @ Us @ Ts ) ) ) ) ) ) ).

% append_eq_append_conv2
thf(fact_41_append__eq__appendI,axiom,
    ! [Xs: list_P512754263e_form,Xs1: list_P512754263e_form,Zs2: list_P512754263e_form,Ys: list_P512754263e_form,Us2: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ Xs1 )
        = Zs2 )
     => ( ( Ys
          = ( append1038020460e_form @ Xs1 @ Us2 ) )
       => ( ( append1038020460e_form @ Xs @ Ys )
          = ( append1038020460e_form @ Zs2 @ Us2 ) ) ) ) ).

% append_eq_appendI
thf(fact_42_append__eq__appendI,axiom,
    ! [Xs: list_nat,Xs1: list_nat,Zs2: list_nat,Ys: list_nat,Us2: list_nat] :
      ( ( ( append_nat @ Xs @ Xs1 )
        = Zs2 )
     => ( ( Ys
          = ( append_nat @ Xs1 @ Us2 ) )
       => ( ( append_nat @ Xs @ Ys )
          = ( append_nat @ Zs2 @ Us2 ) ) ) ) ).

% append_eq_appendI
thf(fact_43_strict__sorted_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat,Ys2: list_nat] :
            ( ( P @ Ys2 )
           => ( P @ ( cons_nat @ X @ Ys2 ) ) )
       => ( P @ A0 ) ) ) ).

% strict_sorted.induct
thf(fact_44_strict__sorted_Ocases,axiom,
    ! [X2: list_nat] :
      ( ( X2 != nil_nat )
     => ~ ! [X: nat,Ys2: list_nat] :
            ( X2
           != ( cons_nat @ X @ Ys2 ) ) ) ).

% strict_sorted.cases
thf(fact_45_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( prover1687215943e_form > prover1687215943e_form ) > list_P512754263e_form > list_P512754263e_form > $o,A0: prover1687215943e_form > prover1687215943e_form,A1: list_P512754263e_form,A2: list_P512754263e_form] :
      ( ! [F2: prover1687215943e_form > prover1687215943e_form,X_1: list_P512754263e_form] : ( P @ F2 @ nil_Pr1384483009e_form @ X_1 )
     => ( ! [F2: prover1687215943e_form > prover1687215943e_form,A3: prover1687215943e_form,As: list_P512754263e_form,Bs: list_P512754263e_form] :
            ( ( P @ F2 @ As @ ( cons_P1475164433e_form @ ( F2 @ A3 ) @ Bs ) )
           => ( P @ F2 @ ( cons_P1475164433e_form @ A3 @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_46_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > prover1687215943e_form ) > list_nat > list_P512754263e_form > $o,A0: nat > prover1687215943e_form,A1: list_nat,A2: list_P512754263e_form] :
      ( ! [F2: nat > prover1687215943e_form,X_1: list_P512754263e_form] : ( P @ F2 @ nil_nat @ X_1 )
     => ( ! [F2: nat > prover1687215943e_form,A3: nat,As: list_nat,Bs: list_P512754263e_form] :
            ( ( P @ F2 @ As @ ( cons_P1475164433e_form @ ( F2 @ A3 ) @ Bs ) )
           => ( P @ F2 @ ( cons_nat @ A3 @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_47_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( prover1687215943e_form > nat ) > list_P512754263e_form > list_nat > $o,A0: prover1687215943e_form > nat,A1: list_P512754263e_form,A2: list_nat] :
      ( ! [F2: prover1687215943e_form > nat,X_1: list_nat] : ( P @ F2 @ nil_Pr1384483009e_form @ X_1 )
     => ( ! [F2: prover1687215943e_form > nat,A3: prover1687215943e_form,As: list_P512754263e_form,Bs: list_nat] :
            ( ( P @ F2 @ As @ ( cons_nat @ ( F2 @ A3 ) @ Bs ) )
           => ( P @ F2 @ ( cons_P1475164433e_form @ A3 @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_48_map__tailrec__rev_Oinduct,axiom,
    ! [P: ( nat > nat ) > list_nat > list_nat > $o,A0: nat > nat,A1: list_nat,A2: list_nat] :
      ( ! [F2: nat > nat,X_1: list_nat] : ( P @ F2 @ nil_nat @ X_1 )
     => ( ! [F2: nat > nat,A3: nat,As: list_nat,Bs: list_nat] :
            ( ( P @ F2 @ As @ ( cons_nat @ ( F2 @ A3 ) @ Bs ) )
           => ( P @ F2 @ ( cons_nat @ A3 @ As ) @ Bs ) )
       => ( P @ A0 @ A1 @ A2 ) ) ) ).

% map_tailrec_rev.induct
thf(fact_49_list__nonempty__induct,axiom,
    ! [Xs: list_P512754263e_form,P: list_P512754263e_form > $o] :
      ( ( Xs != nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form] : ( P @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( ( Xs2 != nil_Pr1384483009e_form )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_50_list__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_51_successively_Oinduct,axiom,
    ! [P: ( prover1687215943e_form > prover1687215943e_form > $o ) > list_P512754263e_form > $o,A0: prover1687215943e_form > prover1687215943e_form > $o,A1: list_P512754263e_form] :
      ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o] : ( P @ P2 @ nil_Pr1384483009e_form )
     => ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form] : ( P @ P2 @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( ( P @ P2 @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) )
             => ( P @ P2 @ ( cons_P1475164433e_form @ X @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_52_successively_Oinduct,axiom,
    ! [P: ( nat > nat > $o ) > list_nat > $o,A0: nat > nat > $o,A1: list_nat] :
      ( ! [P2: nat > nat > $o] : ( P @ P2 @ nil_nat )
     => ( ! [P2: nat > nat > $o,X: nat] : ( P @ P2 @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [P2: nat > nat > $o,X: nat,Y2: nat,Xs2: list_nat] :
              ( ( P @ P2 @ ( cons_nat @ Y2 @ Xs2 ) )
             => ( P @ P2 @ ( cons_nat @ X @ ( cons_nat @ Y2 @ Xs2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% successively.induct
thf(fact_53_remdups__adj_Oinduct,axiom,
    ! [P: list_P512754263e_form > $o,A0: list_P512754263e_form] :
      ( ( P @ nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form] : ( P @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ( ! [X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( ( ( X = Y2 )
               => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) ) )
             => ( ( ( X != Y2 )
                 => ( P @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) ) )
               => ( P @ ( cons_P1475164433e_form @ X @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_54_remdups__adj_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Y2: nat,Xs2: list_nat] :
              ( ( ( X = Y2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) ) )
             => ( ( ( X != Y2 )
                 => ( P @ ( cons_nat @ Y2 @ Xs2 ) ) )
               => ( P @ ( cons_nat @ X @ ( cons_nat @ Y2 @ Xs2 ) ) ) ) )
         => ( P @ A0 ) ) ) ) ).

% remdups_adj.induct
thf(fact_55_sorted__wrt_Oinduct,axiom,
    ! [P: ( prover1687215943e_form > prover1687215943e_form > $o ) > list_P512754263e_form > $o,A0: prover1687215943e_form > prover1687215943e_form > $o,A1: list_P512754263e_form] :
      ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o] : ( P @ P2 @ nil_Pr1384483009e_form )
     => ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form,Ys2: list_P512754263e_form] :
            ( ( P @ P2 @ Ys2 )
           => ( P @ P2 @ ( cons_P1475164433e_form @ X @ Ys2 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_56_sorted__wrt_Oinduct,axiom,
    ! [P: ( nat > nat > $o ) > list_nat > $o,A0: nat > nat > $o,A1: list_nat] :
      ( ! [P2: nat > nat > $o] : ( P @ P2 @ nil_nat )
     => ( ! [P2: nat > nat > $o,X: nat,Ys2: list_nat] :
            ( ( P @ P2 @ Ys2 )
           => ( P @ P2 @ ( cons_nat @ X @ Ys2 ) ) )
       => ( P @ A0 @ A1 ) ) ) ).

% sorted_wrt.induct
thf(fact_57_remdups__adj_Ocases,axiom,
    ! [X2: list_P512754263e_form] :
      ( ( X2 != nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form] :
            ( X2
           != ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ~ ! [X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( X2
             != ( cons_P1475164433e_form @ X @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_58_remdups__adj_Ocases,axiom,
    ! [X2: list_nat] :
      ( ( X2 != nil_nat )
     => ( ! [X: nat] :
            ( X2
           != ( cons_nat @ X @ nil_nat ) )
       => ~ ! [X: nat,Y2: nat,Xs2: list_nat] :
              ( X2
             != ( cons_nat @ X @ ( cons_nat @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_59_transpose_Ocases,axiom,
    ! [X2: list_l461858535e_form] :
      ( ( X2 != nil_li1393862353e_form )
     => ( ! [Xss: list_l461858535e_form] :
            ( X2
           != ( cons_l1379921697e_form @ nil_Pr1384483009e_form @ Xss ) )
       => ~ ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Xss: list_l461858535e_form] :
              ( X2
             != ( cons_l1379921697e_form @ ( cons_P1475164433e_form @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_60_transpose_Ocases,axiom,
    ! [X2: list_list_nat] :
      ( ( X2 != nil_list_nat )
     => ( ! [Xss: list_list_nat] :
            ( X2
           != ( cons_list_nat @ nil_nat @ Xss ) )
       => ~ ! [X: nat,Xs2: list_nat,Xss: list_list_nat] :
              ( X2
             != ( cons_list_nat @ ( cons_nat @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_61_shuffles_Oinduct,axiom,
    ! [P: list_P512754263e_form > list_P512754263e_form > $o,A0: list_P512754263e_form,A1: list_P512754263e_form] :
      ( ! [X_1: list_P512754263e_form] : ( P @ nil_Pr1384483009e_form @ X_1 )
     => ( ! [Xs2: list_P512754263e_form] : ( P @ Xs2 @ nil_Pr1384483009e_form )
       => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
              ( ( P @ Xs2 @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
             => ( ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ Ys2 )
               => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% shuffles.induct
thf(fact_62_shuffles_Oinduct,axiom,
    ! [P: list_nat > list_nat > $o,A0: list_nat,A1: list_nat] :
      ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
     => ( ! [Xs2: list_nat] : ( P @ Xs2 @ nil_nat )
       => ( ! [X: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat] :
              ( ( P @ Xs2 @ ( cons_nat @ Y2 @ Ys2 ) )
             => ( ( P @ ( cons_nat @ X @ Xs2 ) @ Ys2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) ) )
         => ( P @ A0 @ A1 ) ) ) ) ).

% shuffles.induct
thf(fact_63_min__list_Oinduct,axiom,
    ! [P: list_nat > $o,A0: list_nat] :
      ( ! [X: nat,Xs2: list_nat] :
          ( ! [X212: nat,X222: list_nat] :
              ( ( Xs2
                = ( cons_nat @ X212 @ X222 ) )
             => ( P @ Xs2 ) )
         => ( P @ ( cons_nat @ X @ Xs2 ) ) )
     => ( ( P @ nil_nat )
       => ( P @ A0 ) ) ) ).

% min_list.induct
thf(fact_64_min__list_Ocases,axiom,
    ! [X2: list_nat] :
      ( ! [X: nat,Xs2: list_nat] :
          ( X2
         != ( cons_nat @ X @ Xs2 ) )
     => ( X2 = nil_nat ) ) ).

% min_list.cases
thf(fact_65_induct__list012,axiom,
    ! [P: list_P512754263e_form > $o,Xs: list_P512754263e_form] :
      ( ( P @ nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form] : ( P @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ( ! [X: prover1687215943e_form,Y2: prover1687215943e_form,Zs: list_P512754263e_form] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_P1475164433e_form @ Y2 @ Zs ) )
               => ( P @ ( cons_P1475164433e_form @ X @ ( cons_P1475164433e_form @ Y2 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_66_induct__list012,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Y2: nat,Zs: list_nat] :
              ( ( P @ Zs )
             => ( ( P @ ( cons_nat @ Y2 @ Zs ) )
               => ( P @ ( cons_nat @ X @ ( cons_nat @ Y2 @ Zs ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% induct_list012
thf(fact_67_splice_Oinduct,axiom,
    ! [P: list_P512754263e_form > list_P512754263e_form > $o,A0: list_P512754263e_form,A1: list_P512754263e_form] :
      ( ! [X_1: list_P512754263e_form] : ( P @ nil_Pr1384483009e_form @ X_1 )
     => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Ys2: list_P512754263e_form] :
            ( ( P @ Ys2 @ Xs2 )
           => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ Ys2 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_68_splice_Oinduct,axiom,
    ! [P: list_nat > list_nat > $o,A0: list_nat,A1: list_nat] :
      ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
     => ( ! [X: nat,Xs2: list_nat,Ys2: list_nat] :
            ( ( P @ Ys2 @ Xs2 )
           => ( P @ ( cons_nat @ X @ Xs2 ) @ Ys2 ) )
       => ( P @ A0 @ A1 ) ) ) ).

% splice.induct
thf(fact_69_list__induct2_H,axiom,
    ! [P: list_P512754263e_form > list_P512754263e_form > $o,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( P @ nil_Pr1384483009e_form @ nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] : ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ nil_Pr1384483009e_form )
       => ( ! [Y2: prover1687215943e_form,Ys2: list_P512754263e_form] : ( P @ nil_Pr1384483009e_form @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
         => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
                ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_70_list__induct2_H,axiom,
    ! [P: list_P512754263e_form > list_nat > $o,Xs: list_P512754263e_form,Ys: list_nat] :
      ( ( P @ nil_Pr1384483009e_form @ nil_nat )
     => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] : ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y2: nat,Ys2: list_nat] : ( P @ nil_Pr1384483009e_form @ ( cons_nat @ Y2 @ Ys2 ) )
         => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Y2: nat,Ys2: list_nat] :
                ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_71_list__induct2_H,axiom,
    ! [P: list_nat > list_P512754263e_form > $o,Xs: list_nat,Ys: list_P512754263e_form] :
      ( ( P @ nil_nat @ nil_Pr1384483009e_form )
     => ( ! [X: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X @ Xs2 ) @ nil_Pr1384483009e_form )
       => ( ! [Y2: prover1687215943e_form,Ys2: list_P512754263e_form] : ( P @ nil_nat @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
         => ( ! [X: nat,Xs2: list_nat,Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
                ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_72_list__induct2_H,axiom,
    ! [P: list_nat > list_nat > $o,Xs: list_nat,Ys: list_nat] :
      ( ( P @ nil_nat @ nil_nat )
     => ( ! [X: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X @ Xs2 ) @ nil_nat )
       => ( ! [Y2: nat,Ys2: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y2 @ Ys2 ) )
         => ( ! [X: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat] :
                ( ( P @ Xs2 @ Ys2 )
               => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) )
           => ( P @ Xs @ Ys ) ) ) ) ) ).

% list_induct2'
thf(fact_73_neq__Nil__conv,axiom,
    ! [Xs: list_P512754263e_form] :
      ( ( Xs != nil_Pr1384483009e_form )
      = ( ? [Y3: prover1687215943e_form,Ys3: list_P512754263e_form] :
            ( Xs
            = ( cons_P1475164433e_form @ Y3 @ Ys3 ) ) ) ) ).

% neq_Nil_conv
thf(fact_74_neq__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
      = ( ? [Y3: nat,Ys3: list_nat] :
            ( Xs
            = ( cons_nat @ Y3 @ Ys3 ) ) ) ) ).

% neq_Nil_conv
thf(fact_75_list_Oinducts,axiom,
    ! [P: list_P512754263e_form > $o,List: list_P512754263e_form] :
      ( ( P @ nil_Pr1384483009e_form )
     => ( ! [X1: prover1687215943e_form,X23: list_P512754263e_form] :
            ( ( P @ X23 )
           => ( P @ ( cons_P1475164433e_form @ X1 @ X23 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_76_list_Oinducts,axiom,
    ! [P: list_nat > $o,List: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X1: nat,X23: list_nat] :
            ( ( P @ X23 )
           => ( P @ ( cons_nat @ X1 @ X23 ) ) )
       => ( P @ List ) ) ) ).

% list.inducts
thf(fact_77_list_Oexhaust,axiom,
    ! [Y: list_P512754263e_form] :
      ( ( Y != nil_Pr1384483009e_form )
     => ~ ! [X213: prover1687215943e_form,X223: list_P512754263e_form] :
            ( Y
           != ( cons_P1475164433e_form @ X213 @ X223 ) ) ) ).

% list.exhaust
thf(fact_78_list_Oexhaust,axiom,
    ! [Y: list_nat] :
      ( ( Y != nil_nat )
     => ~ ! [X213: nat,X223: list_nat] :
            ( Y
           != ( cons_nat @ X213 @ X223 ) ) ) ).

% list.exhaust
thf(fact_79_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_80_Collect__mem__eq,axiom,
    ! [A4: set_nat] :
      ( ( collect_nat
        @ ^ [X3: nat] : ( member_nat @ X3 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_81_list_OdiscI,axiom,
    ! [List: list_P512754263e_form,X21: prover1687215943e_form,X22: list_P512754263e_form] :
      ( ( List
        = ( cons_P1475164433e_form @ X21 @ X22 ) )
     => ( List != nil_Pr1384483009e_form ) ) ).

% list.discI
thf(fact_82_list_OdiscI,axiom,
    ! [List: list_nat,X21: nat,X22: list_nat] :
      ( ( List
        = ( cons_nat @ X21 @ X22 ) )
     => ( List != nil_nat ) ) ).

% list.discI
thf(fact_83_list_Odistinct_I1_J,axiom,
    ! [X21: prover1687215943e_form,X22: list_P512754263e_form] :
      ( nil_Pr1384483009e_form
     != ( cons_P1475164433e_form @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_84_list_Odistinct_I1_J,axiom,
    ! [X21: nat,X22: list_nat] :
      ( nil_nat
     != ( cons_nat @ X21 @ X22 ) ) ).

% list.distinct(1)
thf(fact_85_list_Oset__cases,axiom,
    ! [E: prover1687215943e_form,A: list_P512754263e_form] :
      ( ( member1793840734e_form @ E @ ( set_Pr1105237746e_form @ A ) )
     => ( ! [Z2: list_P512754263e_form] :
            ( A
           != ( cons_P1475164433e_form @ E @ Z2 ) )
       => ~ ! [Z1: prover1687215943e_form,Z2: list_P512754263e_form] :
              ( ( A
                = ( cons_P1475164433e_form @ Z1 @ Z2 ) )
             => ~ ( member1793840734e_form @ E @ ( set_Pr1105237746e_form @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_86_list_Oset__cases,axiom,
    ! [E: nat,A: list_nat] :
      ( ( member_nat @ E @ ( set_nat2 @ A ) )
     => ( ! [Z2: list_nat] :
            ( A
           != ( cons_nat @ E @ Z2 ) )
       => ~ ! [Z1: nat,Z2: list_nat] :
              ( ( A
                = ( cons_nat @ Z1 @ Z2 ) )
             => ~ ( member_nat @ E @ ( set_nat2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_87_set__ConsD,axiom,
    ! [Y: prover1687215943e_form,X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ Y @ ( set_Pr1105237746e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) ) )
     => ( ( Y = X2 )
        | ( member1793840734e_form @ Y @ ( set_Pr1105237746e_form @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_88_set__ConsD,axiom,
    ! [Y: nat,X2: nat,Xs: list_nat] :
      ( ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X2 @ Xs ) ) )
     => ( ( Y = X2 )
        | ( member_nat @ Y @ ( set_nat2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_89_list_Oset__intros_I1_J,axiom,
    ! [X21: prover1687215943e_form,X22: list_P512754263e_form] : ( member1793840734e_form @ X21 @ ( set_Pr1105237746e_form @ ( cons_P1475164433e_form @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_90_list_Oset__intros_I1_J,axiom,
    ! [X21: nat,X22: list_nat] : ( member_nat @ X21 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ).

% list.set_intros(1)
thf(fact_91_list_Oset__intros_I2_J,axiom,
    ! [Y: prover1687215943e_form,X22: list_P512754263e_form,X21: prover1687215943e_form] :
      ( ( member1793840734e_form @ Y @ ( set_Pr1105237746e_form @ X22 ) )
     => ( member1793840734e_form @ Y @ ( set_Pr1105237746e_form @ ( cons_P1475164433e_form @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_92_list_Oset__intros_I2_J,axiom,
    ! [Y: nat,X22: list_nat,X21: nat] :
      ( ( member_nat @ Y @ ( set_nat2 @ X22 ) )
     => ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ) ).

% list.set_intros(2)
thf(fact_93_append__Cons,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( append1038020460e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ Ys )
      = ( cons_P1475164433e_form @ X2 @ ( append1038020460e_form @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_94_append__Cons,axiom,
    ! [X2: nat,Xs: list_nat,Ys: list_nat] :
      ( ( append_nat @ ( cons_nat @ X2 @ Xs ) @ Ys )
      = ( cons_nat @ X2 @ ( append_nat @ Xs @ Ys ) ) ) ).

% append_Cons
thf(fact_95_Cons__eq__appendI,axiom,
    ! [X2: prover1687215943e_form,Xs1: list_P512754263e_form,Ys: list_P512754263e_form,Xs: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( cons_P1475164433e_form @ X2 @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append1038020460e_form @ Xs1 @ Zs2 ) )
       => ( ( cons_P1475164433e_form @ X2 @ Xs )
          = ( append1038020460e_form @ Ys @ Zs2 ) ) ) ) ).

% Cons_eq_appendI
thf(fact_96_Cons__eq__appendI,axiom,
    ! [X2: nat,Xs1: list_nat,Ys: list_nat,Xs: list_nat,Zs2: list_nat] :
      ( ( ( cons_nat @ X2 @ Xs1 )
        = Ys )
     => ( ( Xs
          = ( append_nat @ Xs1 @ Zs2 ) )
       => ( ( cons_nat @ X2 @ Xs )
          = ( append_nat @ Ys @ Zs2 ) ) ) ) ).

% Cons_eq_appendI
thf(fact_97_append_Oleft__neutral,axiom,
    ! [A: list_P512754263e_form] :
      ( ( append1038020460e_form @ nil_Pr1384483009e_form @ A )
      = A ) ).

% append.left_neutral
thf(fact_98_append_Oleft__neutral,axiom,
    ! [A: list_nat] :
      ( ( append_nat @ nil_nat @ A )
      = A ) ).

% append.left_neutral
thf(fact_99_append__Nil,axiom,
    ! [Ys: list_P512754263e_form] :
      ( ( append1038020460e_form @ nil_Pr1384483009e_form @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_100_append__Nil,axiom,
    ! [Ys: list_nat] :
      ( ( append_nat @ nil_nat @ Ys )
      = Ys ) ).

% append_Nil
thf(fact_101_eq__Nil__appendI,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append1038020460e_form @ nil_Pr1384483009e_form @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_102_eq__Nil__appendI,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
      ( ( Xs = Ys )
     => ( Xs
        = ( append_nat @ nil_nat @ Ys ) ) ) ).

% eq_Nil_appendI
thf(fact_103_rev__nonempty__induct,axiom,
    ! [Xs: list_P512754263e_form,P: list_P512754263e_form > $o] :
      ( ( Xs != nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form] : ( P @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) )
       => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( ( Xs2 != nil_Pr1384483009e_form )
             => ( ( P @ Xs2 )
               => ( P @ ( append1038020460e_form @ Xs2 @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_104_rev__nonempty__induct,axiom,
    ! [Xs: list_nat,P: list_nat > $o] :
      ( ( Xs != nil_nat )
     => ( ! [X: nat] : ( P @ ( cons_nat @ X @ nil_nat ) )
       => ( ! [X: nat,Xs2: list_nat] :
              ( ( Xs2 != nil_nat )
             => ( ( P @ Xs2 )
               => ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X @ nil_nat ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_105_append__eq__Cons__conv,axiom,
    ! [Ys: list_P512754263e_form,Zs2: list_P512754263e_form,X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Ys @ Zs2 )
        = ( cons_P1475164433e_form @ X2 @ Xs ) )
      = ( ( ( Ys = nil_Pr1384483009e_form )
          & ( Zs2
            = ( cons_P1475164433e_form @ X2 @ Xs ) ) )
        | ? [Ys4: list_P512754263e_form] :
            ( ( Ys
              = ( cons_P1475164433e_form @ X2 @ Ys4 ) )
            & ( ( append1038020460e_form @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_106_append__eq__Cons__conv,axiom,
    ! [Ys: list_nat,Zs2: list_nat,X2: nat,Xs: list_nat] :
      ( ( ( append_nat @ Ys @ Zs2 )
        = ( cons_nat @ X2 @ Xs ) )
      = ( ( ( Ys = nil_nat )
          & ( Zs2
            = ( cons_nat @ X2 @ Xs ) ) )
        | ? [Ys4: list_nat] :
            ( ( Ys
              = ( cons_nat @ X2 @ Ys4 ) )
            & ( ( append_nat @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_107_Cons__eq__append__conv,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( cons_P1475164433e_form @ X2 @ Xs )
        = ( append1038020460e_form @ Ys @ Zs2 ) )
      = ( ( ( Ys = nil_Pr1384483009e_form )
          & ( ( cons_P1475164433e_form @ X2 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_P512754263e_form] :
            ( ( ( cons_P1475164433e_form @ X2 @ Ys4 )
              = Ys )
            & ( Xs
              = ( append1038020460e_form @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_108_Cons__eq__append__conv,axiom,
    ! [X2: nat,Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( ( cons_nat @ X2 @ Xs )
        = ( append_nat @ Ys @ Zs2 ) )
      = ( ( ( Ys = nil_nat )
          & ( ( cons_nat @ X2 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_nat] :
            ( ( ( cons_nat @ X2 @ Ys4 )
              = Ys )
            & ( Xs
              = ( append_nat @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_109_rev__exhaust,axiom,
    ! [Xs: list_P512754263e_form] :
      ( ( Xs != nil_Pr1384483009e_form )
     => ~ ! [Ys2: list_P512754263e_form,Y2: prover1687215943e_form] :
            ( Xs
           != ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ Y2 @ nil_Pr1384483009e_form ) ) ) ) ).

% rev_exhaust
thf(fact_110_rev__exhaust,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ~ ! [Ys2: list_nat,Y2: nat] :
            ( Xs
           != ( append_nat @ Ys2 @ ( cons_nat @ Y2 @ nil_nat ) ) ) ) ).

% rev_exhaust
thf(fact_111_rev__induct,axiom,
    ! [P: list_P512754263e_form > $o,Xs: list_P512754263e_form] :
      ( ( P @ nil_Pr1384483009e_form )
     => ( ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] :
            ( ( P @ Xs2 )
           => ( P @ ( append1038020460e_form @ Xs2 @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_112_rev__induct,axiom,
    ! [P: list_nat > $o,Xs: list_nat] :
      ( ( P @ nil_nat )
     => ( ! [X: nat,Xs2: list_nat] :
            ( ( P @ Xs2 )
           => ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X @ nil_nat ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_113_split__list__first__prop__iff,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ( ? [X3: prover1687215943e_form] :
            ( ( member1793840734e_form @ X3 @ ( set_Pr1105237746e_form @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_P512754263e_form,X3: prover1687215943e_form] :
            ( ? [Zs3: list_P512754263e_form] :
                ( Xs
                = ( append1038020460e_form @ Ys3 @ ( cons_P1475164433e_form @ X3 @ Zs3 ) ) )
            & ( P @ X3 )
            & ! [Y3: prover1687215943e_form] :
                ( ( member1793840734e_form @ Y3 @ ( set_Pr1105237746e_form @ Ys3 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_114_split__list__first__prop__iff,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_nat,X3: nat] :
            ( ? [Zs3: list_nat] :
                ( Xs
                = ( append_nat @ Ys3 @ ( cons_nat @ X3 @ Zs3 ) ) )
            & ( P @ X3 )
            & ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Ys3 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_115_split__list__last__prop__iff,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ( ? [X3: prover1687215943e_form] :
            ( ( member1793840734e_form @ X3 @ ( set_Pr1105237746e_form @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_P512754263e_form,X3: prover1687215943e_form,Zs3: list_P512754263e_form] :
            ( ( Xs
              = ( append1038020460e_form @ Ys3 @ ( cons_P1475164433e_form @ X3 @ Zs3 ) ) )
            & ( P @ X3 )
            & ! [Y3: prover1687215943e_form] :
                ( ( member1793840734e_form @ Y3 @ ( set_Pr1105237746e_form @ Zs3 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_116_split__list__last__prop__iff,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ( ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
            & ( P @ X3 ) ) )
      = ( ? [Ys3: list_nat,X3: nat,Zs3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X3 @ Zs3 ) ) )
            & ( P @ X3 )
            & ! [Y3: nat] :
                ( ( member_nat @ Y3 @ ( set_nat2 @ Zs3 ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_117_in__set__conv__decomp__first,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
      = ( ? [Ys3: list_P512754263e_form,Zs3: list_P512754263e_form] :
            ( ( Xs
              = ( append1038020460e_form @ Ys3 @ ( cons_P1475164433e_form @ X2 @ Zs3 ) ) )
            & ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Ys3 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_118_in__set__conv__decomp__first,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X2 @ Zs3 ) ) )
            & ~ ( member_nat @ X2 @ ( set_nat2 @ Ys3 ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_119_in__set__conv__decomp__last,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
      = ( ? [Ys3: list_P512754263e_form,Zs3: list_P512754263e_form] :
            ( ( Xs
              = ( append1038020460e_form @ Ys3 @ ( cons_P1475164433e_form @ X2 @ Zs3 ) ) )
            & ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_120_in__set__conv__decomp__last,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs3: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys3 @ ( cons_nat @ X2 @ Zs3 ) ) )
            & ~ ( member_nat @ X2 @ ( set_nat2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_121_split__list__first__propE,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_P512754263e_form,X: prover1687215943e_form] :
            ( ? [Zs: list_P512754263e_form] :
                ( Xs
                = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
           => ( ( P @ X )
             => ~ ! [Xa: prover1687215943e_form] :
                    ( ( member1793840734e_form @ Xa @ ( set_Pr1105237746e_form @ Ys2 ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_first_propE
thf(fact_122_split__list__first__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X: nat] :
            ( ? [Zs: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
           => ( ( P @ X )
             => ~ ! [Xa: nat] :
                    ( ( member_nat @ Xa @ ( set_nat2 @ Ys2 ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_first_propE
thf(fact_123_split__list__last__propE,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_P512754263e_form,X: prover1687215943e_form,Zs: list_P512754263e_form] :
            ( ( Xs
              = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
           => ( ( P @ X )
             => ~ ! [Xa: prover1687215943e_form] :
                    ( ( member1793840734e_form @ Xa @ ( set_Pr1105237746e_form @ Zs ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_last_propE
thf(fact_124_split__list__last__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X: nat,Zs: list_nat] :
            ( ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
           => ( ( P @ X )
             => ~ ! [Xa: nat] :
                    ( ( member_nat @ Xa @ ( set_nat2 @ Zs ) )
                   => ~ ( P @ Xa ) ) ) ) ) ).

% split_list_last_propE
thf(fact_125_split__list__first__prop,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_P512754263e_form,X: prover1687215943e_form] :
          ( ? [Zs: list_P512754263e_form] :
              ( Xs
              = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
          & ( P @ X )
          & ! [Xa: prover1687215943e_form] :
              ( ( member1793840734e_form @ Xa @ ( set_Pr1105237746e_form @ Ys2 ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_first_prop
thf(fact_126_split__list__first__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X: nat] :
          ( ? [Zs: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
          & ( P @ X )
          & ! [Xa: nat] :
              ( ( member_nat @ Xa @ ( set_nat2 @ Ys2 ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_first_prop
thf(fact_127_split__list__last__prop,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_P512754263e_form,X: prover1687215943e_form,Zs: list_P512754263e_form] :
          ( ( Xs
            = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
          & ( P @ X )
          & ! [Xa: prover1687215943e_form] :
              ( ( member1793840734e_form @ Xa @ ( set_Pr1105237746e_form @ Zs ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_last_prop
thf(fact_128_split__list__last__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X: nat,Zs: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
          & ( P @ X )
          & ! [Xa: nat] :
              ( ( member_nat @ Xa @ ( set_nat2 @ Zs ) )
             => ~ ( P @ Xa ) ) ) ) ).

% split_list_last_prop
thf(fact_129_in__set__conv__decomp,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
      = ( ? [Ys3: list_P512754263e_form,Zs3: list_P512754263e_form] :
            ( Xs
            = ( append1038020460e_form @ Ys3 @ ( cons_P1475164433e_form @ X2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_130_in__set__conv__decomp,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
      = ( ? [Ys3: list_nat,Zs3: list_nat] :
            ( Xs
            = ( append_nat @ Ys3 @ ( cons_nat @ X2 @ Zs3 ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_131_append__Cons__eq__iff,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,Xs3: list_P512754263e_form,Ys5: list_P512754263e_form] :
      ( ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
     => ( ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Ys ) )
       => ( ( ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ Ys ) )
            = ( append1038020460e_form @ Xs3 @ ( cons_P1475164433e_form @ X2 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_132_append__Cons__eq__iff,axiom,
    ! [X2: nat,Xs: list_nat,Ys: list_nat,Xs3: list_nat,Ys5: list_nat] :
      ( ~ ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ( ~ ( member_nat @ X2 @ ( set_nat2 @ Ys ) )
       => ( ( ( append_nat @ Xs @ ( cons_nat @ X2 @ Ys ) )
            = ( append_nat @ Xs3 @ ( cons_nat @ X2 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_133_split__list__propE,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_P512754263e_form,X: prover1687215943e_form] :
            ( ? [Zs: list_P512754263e_form] :
                ( Xs
                = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_134_split__list__propE,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ~ ! [Ys2: list_nat,X: nat] :
            ( ? [Zs: list_nat] :
                ( Xs
                = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_135_split__list__first,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
     => ? [Ys2: list_P512754263e_form,Zs: list_P512754263e_form] :
          ( ( Xs
            = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X2 @ Zs ) ) )
          & ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Ys2 ) ) ) ) ).

% split_list_first
thf(fact_136_split__list__first,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs ) ) )
          & ~ ( member_nat @ X2 @ ( set_nat2 @ Ys2 ) ) ) ) ).

% split_list_first
thf(fact_137_split__list__prop,axiom,
    ! [Xs: list_P512754263e_form,P: prover1687215943e_form > $o] :
      ( ? [X4: prover1687215943e_form] :
          ( ( member1793840734e_form @ X4 @ ( set_Pr1105237746e_form @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_P512754263e_form,X: prover1687215943e_form] :
          ( ? [Zs: list_P512754263e_form] :
              ( Xs
              = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X @ Zs ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_138_split__list__prop,axiom,
    ! [Xs: list_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
          & ( P @ X4 ) )
     => ? [Ys2: list_nat,X: nat] :
          ( ? [Zs: list_nat] :
              ( Xs
              = ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_139_split__list__last,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
     => ? [Ys2: list_P512754263e_form,Zs: list_P512754263e_form] :
          ( ( Xs
            = ( append1038020460e_form @ Ys2 @ ( cons_P1475164433e_form @ X2 @ Zs ) ) )
          & ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Zs ) ) ) ) ).

% split_list_last
thf(fact_140_split__list__last,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ? [Ys2: list_nat,Zs: list_nat] :
          ( ( Xs
            = ( append_nat @ Ys2 @ ( cons_nat @ X2 @ Zs ) ) )
          & ~ ( member_nat @ X2 @ ( set_nat2 @ Zs ) ) ) ) ).

% split_list_last
thf(fact_141_old_Oprod_Oinject,axiom,
    ! [A: set_Pr619177522elle_U,B: nat > list_P796095576elle_U > $o,A5: set_Pr619177522elle_U,B2: nat > list_P796095576elle_U > $o] :
      ( ( ( produc1069574002le_U_o @ A @ B )
        = ( produc1069574002le_U_o @ A5 @ B2 ) )
      = ( ( A = A5 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_142_prod_Oinject,axiom,
    ! [X12: set_Pr619177522elle_U,X24: nat > list_P796095576elle_U > $o,Y1: set_Pr619177522elle_U,Y23: nat > list_P796095576elle_U > $o] :
      ( ( ( produc1069574002le_U_o @ X12 @ X24 )
        = ( produc1069574002le_U_o @ Y1 @ Y23 ) )
      = ( ( X12 = Y1 )
        & ( X24 = Y23 ) ) ) ).

% prod.inject
thf(fact_143_the__elem__set,axiom,
    ! [X2: prover1687215943e_form] :
      ( ( the_el969789074e_form @ ( set_Pr1105237746e_form @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) )
      = X2 ) ).

% the_elem_set
thf(fact_144_the__elem__set,axiom,
    ! [X2: nat] :
      ( ( the_elem_nat @ ( set_nat2 @ ( cons_nat @ X2 @ nil_nat ) ) )
      = X2 ) ).

% the_elem_set
thf(fact_145_bind__simps_I2_J,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,F: prover1687215943e_form > list_P512754263e_form] :
      ( ( bind_P1054726576e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ F )
      = ( append1038020460e_form @ ( F @ X2 ) @ ( bind_P1054726576e_form @ Xs @ F ) ) ) ).

% bind_simps(2)
thf(fact_146_bind__simps_I2_J,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,F: prover1687215943e_form > list_nat] :
      ( ( bind_P1359331232rm_nat @ ( cons_P1475164433e_form @ X2 @ Xs ) @ F )
      = ( append_nat @ ( F @ X2 ) @ ( bind_P1359331232rm_nat @ Xs @ F ) ) ) ).

% bind_simps(2)
thf(fact_147_bind__simps_I2_J,axiom,
    ! [X2: nat,Xs: list_nat,F: nat > list_P512754263e_form] :
      ( ( bind_n1193922848e_form @ ( cons_nat @ X2 @ Xs ) @ F )
      = ( append1038020460e_form @ ( F @ X2 ) @ ( bind_n1193922848e_form @ Xs @ F ) ) ) ).

% bind_simps(2)
thf(fact_148_bind__simps_I2_J,axiom,
    ! [X2: nat,Xs: list_nat,F: nat > list_nat] :
      ( ( bind_nat_nat @ ( cons_nat @ X2 @ Xs ) @ F )
      = ( append_nat @ ( F @ X2 ) @ ( bind_nat_nat @ Xs @ F ) ) ) ).

% bind_simps(2)
thf(fact_149_maps__simps_I1_J,axiom,
    ! [F: prover1687215943e_form > list_P512754263e_form,X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( maps_P2058952566e_form @ F @ ( cons_P1475164433e_form @ X2 @ Xs ) )
      = ( append1038020460e_form @ ( F @ X2 ) @ ( maps_P2058952566e_form @ F @ Xs ) ) ) ).

% maps_simps(1)
thf(fact_150_maps__simps_I1_J,axiom,
    ! [F: prover1687215943e_form > list_nat,X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( maps_P1549384538rm_nat @ F @ ( cons_P1475164433e_form @ X2 @ Xs ) )
      = ( append_nat @ ( F @ X2 ) @ ( maps_P1549384538rm_nat @ F @ Xs ) ) ) ).

% maps_simps(1)
thf(fact_151_maps__simps_I1_J,axiom,
    ! [F: nat > list_P512754263e_form,X2: nat,Xs: list_nat] :
      ( ( maps_n1383976154e_form @ F @ ( cons_nat @ X2 @ Xs ) )
      = ( append1038020460e_form @ ( F @ X2 ) @ ( maps_n1383976154e_form @ F @ Xs ) ) ) ).

% maps_simps(1)
thf(fact_152_maps__simps_I1_J,axiom,
    ! [F: nat > list_nat,X2: nat,Xs: list_nat] :
      ( ( maps_nat_nat @ F @ ( cons_nat @ X2 @ Xs ) )
      = ( append_nat @ ( F @ X2 ) @ ( maps_nat_nat @ F @ Xs ) ) ) ).

% maps_simps(1)
thf(fact_153_not__in__set__insert,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ~ ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ Xs ) )
     => ( ( insert697320747e_form @ X2 @ Xs )
        = ( cons_P1475164433e_form @ X2 @ Xs ) ) ) ).

% not_in_set_insert
thf(fact_154_not__in__set__insert,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ~ ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ( ( insert_nat @ X2 @ Xs )
        = ( cons_nat @ X2 @ Xs ) ) ) ).

% not_in_set_insert
thf(fact_155_insert__Nil,axiom,
    ! [X2: prover1687215943e_form] :
      ( ( insert697320747e_form @ X2 @ nil_Pr1384483009e_form )
      = ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) ).

% insert_Nil
thf(fact_156_insert__Nil,axiom,
    ! [X2: nat] :
      ( ( insert_nat @ X2 @ nil_nat )
      = ( cons_nat @ X2 @ nil_nat ) ) ).

% insert_Nil
thf(fact_157_sfv__cons,axiom,
    ! [A: prover1687215943e_form,List: list_P512754263e_form] :
      ( ( prover_Mirabelle_sfv @ ( cons_P1475164433e_form @ A @ List ) )
      = ( append_nat @ ( prover_Mirabelle_fv @ A ) @ ( prover_Mirabelle_sfv @ List ) ) ) ).

% sfv_cons
thf(fact_158_rotate1_Osimps_I2_J,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form] :
      ( ( rotate650061876e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
      = ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) ) ).

% rotate1.simps(2)
thf(fact_159_rotate1_Osimps_I2_J,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( rotate1_nat @ ( cons_nat @ X2 @ Xs ) )
      = ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) ) ) ).

% rotate1.simps(2)
thf(fact_160_butlast__snoc,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( butlas664258165e_form @ ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) )
      = Xs ) ).

% butlast_snoc
thf(fact_161_butlast__snoc,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( butlast_nat @ ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) ) )
      = Xs ) ).

% butlast_snoc
thf(fact_162_rotate1__is__Nil__conv,axiom,
    ! [Xs: list_P512754263e_form] :
      ( ( ( rotate650061876e_form @ Xs )
        = nil_Pr1384483009e_form )
      = ( Xs = nil_Pr1384483009e_form ) ) ).

% rotate1_is_Nil_conv
thf(fact_163_rotate1__is__Nil__conv,axiom,
    ! [Xs: list_nat] :
      ( ( ( rotate1_nat @ Xs )
        = nil_nat )
      = ( Xs = nil_nat ) ) ).

% rotate1_is_Nil_conv
thf(fact_164_set__rotate1,axiom,
    ! [Xs: list_nat] :
      ( ( set_nat2 @ ( rotate1_nat @ Xs ) )
      = ( set_nat2 @ Xs ) ) ).

% set_rotate1
thf(fact_165_in__set__insert,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ Xs ) )
     => ( ( insert_nat @ X2 @ Xs )
        = Xs ) ) ).

% in_set_insert
thf(fact_166_bind__simps_I1_J,axiom,
    ! [F: prover1687215943e_form > list_P512754263e_form] :
      ( ( bind_P1054726576e_form @ nil_Pr1384483009e_form @ F )
      = nil_Pr1384483009e_form ) ).

% bind_simps(1)
thf(fact_167_bind__simps_I1_J,axiom,
    ! [F: prover1687215943e_form > list_nat] :
      ( ( bind_P1359331232rm_nat @ nil_Pr1384483009e_form @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_168_bind__simps_I1_J,axiom,
    ! [F: nat > list_P512754263e_form] :
      ( ( bind_n1193922848e_form @ nil_nat @ F )
      = nil_Pr1384483009e_form ) ).

% bind_simps(1)
thf(fact_169_bind__simps_I1_J,axiom,
    ! [F: nat > list_nat] :
      ( ( bind_nat_nat @ nil_nat @ F )
      = nil_nat ) ).

% bind_simps(1)
thf(fact_170_butlast_Osimps_I1_J,axiom,
    ( ( butlas664258165e_form @ nil_Pr1384483009e_form )
    = nil_Pr1384483009e_form ) ).

% butlast.simps(1)
thf(fact_171_butlast_Osimps_I1_J,axiom,
    ( ( butlast_nat @ nil_nat )
    = nil_nat ) ).

% butlast.simps(1)
thf(fact_172_in__set__butlastD,axiom,
    ! [X2: nat,Xs: list_nat] :
      ( ( member_nat @ X2 @ ( set_nat2 @ ( butlast_nat @ Xs ) ) )
     => ( member_nat @ X2 @ ( set_nat2 @ Xs ) ) ) ).

% in_set_butlastD
thf(fact_173_rotate1_Osimps_I1_J,axiom,
    ( ( rotate650061876e_form @ nil_Pr1384483009e_form )
    = nil_Pr1384483009e_form ) ).

% rotate1.simps(1)
thf(fact_174_rotate1_Osimps_I1_J,axiom,
    ( ( rotate1_nat @ nil_nat )
    = nil_nat ) ).

% rotate1.simps(1)
thf(fact_175_sorted__wrt_Ocases,axiom,
    ! [X2: produc957084248e_form] :
      ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o] :
          ( X2
         != ( produc54611594e_form @ P2 @ nil_Pr1384483009e_form ) )
     => ~ ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form,Ys2: list_P512754263e_form] :
            ( X2
           != ( produc54611594e_form @ P2 @ ( cons_P1475164433e_form @ X @ Ys2 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_176_sorted__wrt_Ocases,axiom,
    ! [X2: produc890077173st_nat] :
      ( ! [P2: nat > nat > $o] :
          ( X2
         != ( produc939441135st_nat @ P2 @ nil_nat ) )
     => ~ ! [P2: nat > nat > $o,X: nat,Ys2: list_nat] :
            ( X2
           != ( produc939441135st_nat @ P2 @ ( cons_nat @ X @ Ys2 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_177_successively_Ocases,axiom,
    ! [X2: produc957084248e_form] :
      ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o] :
          ( X2
         != ( produc54611594e_form @ P2 @ nil_Pr1384483009e_form ) )
     => ( ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form] :
            ( X2
           != ( produc54611594e_form @ P2 @ ( cons_P1475164433e_form @ X @ nil_Pr1384483009e_form ) ) )
       => ~ ! [P2: prover1687215943e_form > prover1687215943e_form > $o,X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( X2
             != ( produc54611594e_form @ P2 @ ( cons_P1475164433e_form @ X @ ( cons_P1475164433e_form @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_178_successively_Ocases,axiom,
    ! [X2: produc890077173st_nat] :
      ( ! [P2: nat > nat > $o] :
          ( X2
         != ( produc939441135st_nat @ P2 @ nil_nat ) )
     => ( ! [P2: nat > nat > $o,X: nat] :
            ( X2
           != ( produc939441135st_nat @ P2 @ ( cons_nat @ X @ nil_nat ) ) )
       => ~ ! [P2: nat > nat > $o,X: nat,Y2: nat,Xs2: list_nat] :
              ( X2
             != ( produc939441135st_nat @ P2 @ ( cons_nat @ X @ ( cons_nat @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_179_splice_Ocases,axiom,
    ! [X2: produc791938916e_form] :
      ( ! [Ys2: list_P512754263e_form] :
          ( X2
         != ( produc891809686e_form @ nil_Pr1384483009e_form @ Ys2 ) )
     => ~ ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Ys2: list_P512754263e_form] :
            ( X2
           != ( produc891809686e_form @ ( cons_P1475164433e_form @ X @ Xs2 ) @ Ys2 ) ) ) ).

% splice.cases
thf(fact_180_splice_Ocases,axiom,
    ! [X2: produc1699244961st_nat] :
      ( ! [Ys2: list_nat] :
          ( X2
         != ( produc1625736153st_nat @ nil_nat @ Ys2 ) )
     => ~ ! [X: nat,Xs2: list_nat,Ys2: list_nat] :
            ( X2
           != ( produc1625736153st_nat @ ( cons_nat @ X @ Xs2 ) @ Ys2 ) ) ) ).

% splice.cases
thf(fact_181_shuffles_Ocases,axiom,
    ! [X2: produc791938916e_form] :
      ( ! [Ys2: list_P512754263e_form] :
          ( X2
         != ( produc891809686e_form @ nil_Pr1384483009e_form @ Ys2 ) )
     => ( ! [Xs2: list_P512754263e_form] :
            ( X2
           != ( produc891809686e_form @ Xs2 @ nil_Pr1384483009e_form ) )
       => ~ ! [X: prover1687215943e_form,Xs2: list_P512754263e_form,Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
              ( X2
             != ( produc891809686e_form @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_182_shuffles_Ocases,axiom,
    ! [X2: produc1699244961st_nat] :
      ( ! [Ys2: list_nat] :
          ( X2
         != ( produc1625736153st_nat @ nil_nat @ Ys2 ) )
     => ( ! [Xs2: list_nat] :
            ( X2
           != ( produc1625736153st_nat @ Xs2 @ nil_nat ) )
       => ~ ! [X: nat,Xs2: list_nat,Y2: nat,Ys2: list_nat] :
              ( X2
             != ( produc1625736153st_nat @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) ) ) ) ).

% shuffles.cases
thf(fact_183_butlast_Osimps_I2_J,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( ( Xs = nil_Pr1384483009e_form )
       => ( ( butlas664258165e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
          = nil_Pr1384483009e_form ) )
      & ( ( Xs != nil_Pr1384483009e_form )
       => ( ( butlas664258165e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
          = ( cons_P1475164433e_form @ X2 @ ( butlas664258165e_form @ Xs ) ) ) ) ) ).

% butlast.simps(2)
thf(fact_184_butlast_Osimps_I2_J,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( ( Xs = nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X2 @ Xs ) )
          = nil_nat ) )
      & ( ( Xs != nil_nat )
       => ( ( butlast_nat @ ( cons_nat @ X2 @ Xs ) )
          = ( cons_nat @ X2 @ ( butlast_nat @ Xs ) ) ) ) ) ).

% butlast.simps(2)
thf(fact_185_butlast__append,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( ( Ys = nil_Pr1384483009e_form )
       => ( ( butlas664258165e_form @ ( append1038020460e_form @ Xs @ Ys ) )
          = ( butlas664258165e_form @ Xs ) ) )
      & ( ( Ys != nil_Pr1384483009e_form )
       => ( ( butlas664258165e_form @ ( append1038020460e_form @ Xs @ Ys ) )
          = ( append1038020460e_form @ Xs @ ( butlas664258165e_form @ Ys ) ) ) ) ) ).

% butlast_append
thf(fact_186_butlast__append,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( ( Ys = nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( butlast_nat @ Xs ) ) )
      & ( ( Ys != nil_nat )
       => ( ( butlast_nat @ ( append_nat @ Xs @ Ys ) )
          = ( append_nat @ Xs @ ( butlast_nat @ Ys ) ) ) ) ) ).

% butlast_append
thf(fact_187_in__set__butlast__appendI,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ ( butlas664258165e_form @ Xs ) ) )
        | ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ ( butlas664258165e_form @ Ys ) ) ) )
     => ( member1793840734e_form @ X2 @ ( set_Pr1105237746e_form @ ( butlas664258165e_form @ ( append1038020460e_form @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_188_in__set__butlast__appendI,axiom,
    ! [X2: nat,Xs: list_nat,Ys: list_nat] :
      ( ( ( member_nat @ X2 @ ( set_nat2 @ ( butlast_nat @ Xs ) ) )
        | ( member_nat @ X2 @ ( set_nat2 @ ( butlast_nat @ Ys ) ) ) )
     => ( member_nat @ X2 @ ( set_nat2 @ ( butlast_nat @ ( append_nat @ Xs @ Ys ) ) ) ) ) ).

% in_set_butlast_appendI
thf(fact_189_maps__simps_I2_J,axiom,
    ! [F: prover1687215943e_form > list_P512754263e_form] :
      ( ( maps_P2058952566e_form @ F @ nil_Pr1384483009e_form )
      = nil_Pr1384483009e_form ) ).

% maps_simps(2)
thf(fact_190_maps__simps_I2_J,axiom,
    ! [F: prover1687215943e_form > list_nat] :
      ( ( maps_P1549384538rm_nat @ F @ nil_Pr1384483009e_form )
      = nil_nat ) ).

% maps_simps(2)
thf(fact_191_maps__simps_I2_J,axiom,
    ! [F: nat > list_P512754263e_form] :
      ( ( maps_n1383976154e_form @ F @ nil_nat )
      = nil_Pr1384483009e_form ) ).

% maps_simps(2)
thf(fact_192_maps__simps_I2_J,axiom,
    ! [F: nat > list_nat] :
      ( ( maps_nat_nat @ F @ nil_nat )
      = nil_nat ) ).

% maps_simps(2)
thf(fact_193_surj__pair,axiom,
    ! [P3: produc227817602le_U_o] :
    ? [X: set_Pr619177522elle_U,Y2: nat > list_P796095576elle_U > $o] :
      ( P3
      = ( produc1069574002le_U_o @ X @ Y2 ) ) ).

% surj_pair
thf(fact_194_prod__cases,axiom,
    ! [P: produc227817602le_U_o > $o,P3: produc227817602le_U_o] :
      ( ! [A3: set_Pr619177522elle_U,B3: nat > list_P796095576elle_U > $o] : ( P @ ( produc1069574002le_U_o @ A3 @ B3 ) )
     => ( P @ P3 ) ) ).

% prod_cases
thf(fact_195_Pair__inject,axiom,
    ! [A: set_Pr619177522elle_U,B: nat > list_P796095576elle_U > $o,A5: set_Pr619177522elle_U,B2: nat > list_P796095576elle_U > $o] :
      ( ( ( produc1069574002le_U_o @ A @ B )
        = ( produc1069574002le_U_o @ A5 @ B2 ) )
     => ~ ( ( A = A5 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_196_old_Oprod_Oexhaust,axiom,
    ! [Y: produc227817602le_U_o] :
      ~ ! [A3: set_Pr619177522elle_U,B3: nat > list_P796095576elle_U > $o] :
          ( Y
         != ( produc1069574002le_U_o @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_197_old_Oprod_Oinducts,axiom,
    ! [P: produc227817602le_U_o > $o,Prod: produc227817602le_U_o] :
      ( ! [A3: set_Pr619177522elle_U,B3: nat > list_P796095576elle_U > $o] : ( P @ ( produc1069574002le_U_o @ A3 @ B3 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_198_List_Oinsert__def,axiom,
    ( insert697320747e_form
    = ( ^ [X3: prover1687215943e_form,Xs4: list_P512754263e_form] : ( if_lis1812881937e_form @ ( member1793840734e_form @ X3 @ ( set_Pr1105237746e_form @ Xs4 ) ) @ Xs4 @ ( cons_P1475164433e_form @ X3 @ Xs4 ) ) ) ) ).

% List.insert_def
thf(fact_199_List_Oinsert__def,axiom,
    ( insert_nat
    = ( ^ [X3: nat,Xs4: list_nat] : ( if_list_nat @ ( member_nat @ X3 @ ( set_nat2 @ Xs4 ) ) @ Xs4 @ ( cons_nat @ X3 @ Xs4 ) ) ) ) ).

% List.insert_def
thf(fact_200_flatten_Osimps_I2_J,axiom,
    ! [A: list_P512754263e_form,List: list_l461858535e_form] :
      ( ( prover542312166e_form @ ( cons_l1379921697e_form @ A @ List ) )
      = ( append1038020460e_form @ A @ ( prover542312166e_form @ List ) ) ) ).

% flatten.simps(2)
thf(fact_201_flatten_Osimps_I2_J,axiom,
    ! [A: list_nat,List: list_list_nat] :
      ( ( prover886976490en_nat @ ( cons_list_nat @ A @ List ) )
      = ( append_nat @ A @ ( prover886976490en_nat @ List ) ) ) ).

% flatten.simps(2)
thf(fact_202_flatten_Osimps_I1_J,axiom,
    ( ( prover542312166e_form @ nil_li1393862353e_form )
    = nil_Pr1384483009e_form ) ).

% flatten.simps(1)
thf(fact_203_flatten_Osimps_I1_J,axiom,
    ( ( prover886976490en_nat @ nil_list_nat )
    = nil_nat ) ).

% flatten.simps(1)
thf(fact_204_product__lists_Osimps_I1_J,axiom,
    ( ( produc168439576e_form @ nil_li1393862353e_form )
    = ( cons_l1379921697e_form @ nil_Pr1384483009e_form @ nil_li1393862353e_form ) ) ).

% product_lists.simps(1)
thf(fact_205_product__lists_Osimps_I1_J,axiom,
    ( ( product_lists_nat @ nil_list_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% product_lists.simps(1)
thf(fact_206_append__butlast__last__id,axiom,
    ! [Xs: list_P512754263e_form] :
      ( ( Xs != nil_Pr1384483009e_form )
     => ( ( append1038020460e_form @ ( butlas664258165e_form @ Xs ) @ ( cons_P1475164433e_form @ ( last_P1811260776e_form @ Xs ) @ nil_Pr1384483009e_form ) )
        = Xs ) ) ).

% append_butlast_last_id
thf(fact_207_append__butlast__last__id,axiom,
    ! [Xs: list_nat] :
      ( ( Xs != nil_nat )
     => ( ( append_nat @ ( butlast_nat @ Xs ) @ ( cons_nat @ ( last_nat @ Xs ) @ nil_nat ) )
        = Xs ) ) ).

% append_butlast_last_id
thf(fact_208_fv_Osimps_I5_J,axiom,
    ! [F: prover1687215943e_form] :
      ( ( prover_Mirabelle_fv @ ( prover571163162e_FAll @ F ) )
      = ( prover2096325705preSuc @ ( prover_Mirabelle_fv @ F ) ) ) ).

% fv.simps(5)
thf(fact_209_last__appendR,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( Ys != nil_Pr1384483009e_form )
     => ( ( last_P1811260776e_form @ ( append1038020460e_form @ Xs @ Ys ) )
        = ( last_P1811260776e_form @ Ys ) ) ) ).

% last_appendR
thf(fact_210_last__appendR,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( Ys != nil_nat )
     => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
        = ( last_nat @ Ys ) ) ) ).

% last_appendR
thf(fact_211_last__appendL,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( Ys = nil_Pr1384483009e_form )
     => ( ( last_P1811260776e_form @ ( append1038020460e_form @ Xs @ Ys ) )
        = ( last_P1811260776e_form @ Xs ) ) ) ).

% last_appendL
thf(fact_212_last__appendL,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( Ys = nil_nat )
     => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
        = ( last_nat @ Xs ) ) ) ).

% last_appendL
thf(fact_213_last__snoc,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( last_P1811260776e_form @ ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) )
      = X2 ) ).

% last_snoc
thf(fact_214_last__snoc,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( last_nat @ ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) ) )
      = X2 ) ).

% last_snoc
thf(fact_215_last__ConsR,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( Xs != nil_Pr1384483009e_form )
     => ( ( last_P1811260776e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
        = ( last_P1811260776e_form @ Xs ) ) ) ).

% last_ConsR
thf(fact_216_last__ConsR,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( Xs != nil_nat )
     => ( ( last_nat @ ( cons_nat @ X2 @ Xs ) )
        = ( last_nat @ Xs ) ) ) ).

% last_ConsR
thf(fact_217_last__ConsL,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( Xs = nil_Pr1384483009e_form )
     => ( ( last_P1811260776e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
        = X2 ) ) ).

% last_ConsL
thf(fact_218_last__ConsL,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( Xs = nil_nat )
     => ( ( last_nat @ ( cons_nat @ X2 @ Xs ) )
        = X2 ) ) ).

% last_ConsL
thf(fact_219_last_Osimps,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form] :
      ( ( ( Xs = nil_Pr1384483009e_form )
       => ( ( last_P1811260776e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
          = X2 ) )
      & ( ( Xs != nil_Pr1384483009e_form )
       => ( ( last_P1811260776e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) )
          = ( last_P1811260776e_form @ Xs ) ) ) ) ).

% last.simps
thf(fact_220_last_Osimps,axiom,
    ! [Xs: list_nat,X2: nat] :
      ( ( ( Xs = nil_nat )
       => ( ( last_nat @ ( cons_nat @ X2 @ Xs ) )
          = X2 ) )
      & ( ( Xs != nil_nat )
       => ( ( last_nat @ ( cons_nat @ X2 @ Xs ) )
          = ( last_nat @ Xs ) ) ) ) ).

% last.simps
thf(fact_221_last__in__set,axiom,
    ! [As2: list_P512754263e_form] :
      ( ( As2 != nil_Pr1384483009e_form )
     => ( member1793840734e_form @ ( last_P1811260776e_form @ As2 ) @ ( set_Pr1105237746e_form @ As2 ) ) ) ).

% last_in_set
thf(fact_222_last__in__set,axiom,
    ! [As2: list_nat] :
      ( ( As2 != nil_nat )
     => ( member_nat @ ( last_nat @ As2 ) @ ( set_nat2 @ As2 ) ) ) ).

% last_in_set
thf(fact_223_longest__common__suffix,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
    ? [Ss: list_P512754263e_form,Xs5: list_P512754263e_form,Ys6: list_P512754263e_form] :
      ( ( Xs
        = ( append1038020460e_form @ Xs5 @ Ss ) )
      & ( Ys
        = ( append1038020460e_form @ Ys6 @ Ss ) )
      & ( ( Xs5 = nil_Pr1384483009e_form )
        | ( Ys6 = nil_Pr1384483009e_form )
        | ( ( last_P1811260776e_form @ Xs5 )
         != ( last_P1811260776e_form @ Ys6 ) ) ) ) ).

% longest_common_suffix
thf(fact_224_longest__common__suffix,axiom,
    ! [Xs: list_nat,Ys: list_nat] :
    ? [Ss: list_nat,Xs5: list_nat,Ys6: list_nat] :
      ( ( Xs
        = ( append_nat @ Xs5 @ Ss ) )
      & ( Ys
        = ( append_nat @ Ys6 @ Ss ) )
      & ( ( Xs5 = nil_nat )
        | ( Ys6 = nil_nat )
        | ( ( last_nat @ Xs5 )
         != ( last_nat @ Ys6 ) ) ) ) ).

% longest_common_suffix
thf(fact_225_last__append,axiom,
    ! [Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( ( Ys = nil_Pr1384483009e_form )
       => ( ( last_P1811260776e_form @ ( append1038020460e_form @ Xs @ Ys ) )
          = ( last_P1811260776e_form @ Xs ) ) )
      & ( ( Ys != nil_Pr1384483009e_form )
       => ( ( last_P1811260776e_form @ ( append1038020460e_form @ Xs @ Ys ) )
          = ( last_P1811260776e_form @ Ys ) ) ) ) ).

% last_append
thf(fact_226_last__append,axiom,
    ! [Ys: list_nat,Xs: list_nat] :
      ( ( ( Ys = nil_nat )
       => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
          = ( last_nat @ Xs ) ) )
      & ( ( Ys != nil_nat )
       => ( ( last_nat @ ( append_nat @ Xs @ Ys ) )
          = ( last_nat @ Ys ) ) ) ) ).

% last_append
thf(fact_227_preSuc_Osimps_I1_J,axiom,
    ( ( prover2096325705preSuc @ nil_nat )
    = nil_nat ) ).

% preSuc.simps(1)
thf(fact_228_snoc__eq__iff__butlast,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form,Ys: list_P512754263e_form] :
      ( ( ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) )
        = Ys )
      = ( ( Ys != nil_Pr1384483009e_form )
        & ( ( butlas664258165e_form @ Ys )
          = Xs )
        & ( ( last_P1811260776e_form @ Ys )
          = X2 ) ) ) ).

% snoc_eq_iff_butlast
thf(fact_229_snoc__eq__iff__butlast,axiom,
    ! [Xs: list_nat,X2: nat,Ys: list_nat] :
      ( ( ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) )
        = Ys )
      = ( ( Ys != nil_nat )
        & ( ( butlast_nat @ Ys )
          = Xs )
        & ( ( last_nat @ Ys )
          = X2 ) ) ) ).

% snoc_eq_iff_butlast
thf(fact_230_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_P512754263e_form,X2: prover1687215943e_form,Ys: list_P512754263e_form,Y: prover1687215943e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ ( cons_P1475164433e_form @ X2 @ nil_Pr1384483009e_form ) ) @ ( append1038020460e_form @ Ys @ ( cons_P1475164433e_form @ Y @ nil_Pr1384483009e_form ) ) ) @ ( listre502458152e_form @ R ) )
      = ( ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) )
          & ( X2 = Y ) )
        | ( ( Xs = Ys )
          & ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y ) @ R ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_231_snoc__listrel1__snoc__iff,axiom,
    ! [Xs: list_nat,X2: nat,Ys: list_nat,Y: nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ ( cons_nat @ X2 @ nil_nat ) ) @ ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
          & ( X2 = Y ) )
        | ( ( Xs = Ys )
          & ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y ) @ R ) ) ) ) ).

% snoc_listrel1_snoc_iff
thf(fact_232_subseqs_Osimps_I1_J,axiom,
    ( ( subseq1471997234e_form @ nil_Pr1384483009e_form )
    = ( cons_l1379921697e_form @ nil_Pr1384483009e_form @ nil_li1393862353e_form ) ) ).

% subseqs.simps(1)
thf(fact_233_subseqs_Osimps_I1_J,axiom,
    ( ( subseqs_nat @ nil_nat )
    = ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).

% subseqs.simps(1)
thf(fact_234_concat__eq__append__conv,axiom,
    ! [Xss2: list_l461858535e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( concat1664984646e_form @ Xss2 )
        = ( append1038020460e_form @ Ys @ Zs2 ) )
      = ( ( ( Xss2 = nil_li1393862353e_form )
         => ( ( Ys = nil_Pr1384483009e_form )
            & ( Zs2 = nil_Pr1384483009e_form ) ) )
        & ( ( Xss2 != nil_li1393862353e_form )
         => ? [Xss1: list_l461858535e_form,Xs4: list_P512754263e_form,Xs6: list_P512754263e_form,Xss22: list_l461858535e_form] :
              ( ( Xss2
                = ( append1797078012e_form @ Xss1 @ ( cons_l1379921697e_form @ ( append1038020460e_form @ Xs4 @ Xs6 ) @ Xss22 ) ) )
              & ( Ys
                = ( append1038020460e_form @ ( concat1664984646e_form @ Xss1 ) @ Xs4 ) )
              & ( Zs2
                = ( append1038020460e_form @ Xs6 @ ( concat1664984646e_form @ Xss22 ) ) ) ) ) ) ) ).

% concat_eq_append_conv
thf(fact_235_concat__eq__append__conv,axiom,
    ! [Xss2: list_list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = ( append_nat @ Ys @ Zs2 ) )
      = ( ( ( Xss2 = nil_list_nat )
         => ( ( Ys = nil_nat )
            & ( Zs2 = nil_nat ) ) )
        & ( ( Xss2 != nil_list_nat )
         => ? [Xss1: list_list_nat,Xs4: list_nat,Xs6: list_nat,Xss22: list_list_nat] :
              ( ( Xss2
                = ( append_list_nat @ Xss1 @ ( cons_list_nat @ ( append_nat @ Xs4 @ Xs6 ) @ Xss22 ) ) )
              & ( Ys
                = ( append_nat @ ( concat_nat @ Xss1 ) @ Xs4 ) )
              & ( Zs2
                = ( append_nat @ Xs6 @ ( concat_nat @ Xss22 ) ) ) ) ) ) ) ).

% concat_eq_append_conv
thf(fact_236_lexord__same__pref__iff,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Ys ) @ ( append1038020460e_form @ Xs @ Zs2 ) ) @ ( lexord1848469012e_form @ R ) )
      = ( ? [X3: prover1687215943e_form] :
            ( ( member1793840734e_form @ X3 @ ( set_Pr1105237746e_form @ Xs ) )
            & ( member189065477e_form @ ( produc1018812320e_form @ X3 @ X3 ) @ R ) )
        | ( member650892795e_form @ ( produc891809686e_form @ Ys @ Zs2 ) @ ( lexord1848469012e_form @ R ) ) ) ) ).

% lexord_same_pref_iff
thf(fact_237_lexord__same__pref__iff,axiom,
    ! [Xs: list_nat,Ys: list_nat,Zs2: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lexord_nat @ R ) )
      = ( ? [X3: nat] :
            ( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
            & ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ R ) )
        | ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lexord_nat @ R ) ) ) ) ).

% lexord_same_pref_iff
thf(fact_238_concat__eq__Nil__conv,axiom,
    ! [Xss2: list_l461858535e_form] :
      ( ( ( concat1664984646e_form @ Xss2 )
        = nil_Pr1384483009e_form )
      = ( ! [X3: list_P512754263e_form] :
            ( ( member1828782574e_form @ X3 @ ( set_li1219651714e_form @ Xss2 ) )
           => ( X3 = nil_Pr1384483009e_form ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_239_concat__eq__Nil__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = nil_nat )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss2 ) )
           => ( X3 = nil_nat ) ) ) ) ).

% concat_eq_Nil_conv
thf(fact_240_Nil__eq__concat__conv,axiom,
    ! [Xss2: list_l461858535e_form] :
      ( ( nil_Pr1384483009e_form
        = ( concat1664984646e_form @ Xss2 ) )
      = ( ! [X3: list_P512754263e_form] :
            ( ( member1828782574e_form @ X3 @ ( set_li1219651714e_form @ Xss2 ) )
           => ( X3 = nil_Pr1384483009e_form ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_241_Nil__eq__concat__conv,axiom,
    ! [Xss2: list_list_nat] :
      ( ( nil_nat
        = ( concat_nat @ Xss2 ) )
      = ( ! [X3: list_nat] :
            ( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss2 ) )
           => ( X3 = nil_nat ) ) ) ) ).

% Nil_eq_concat_conv
thf(fact_242_concat__append,axiom,
    ! [Xs: list_l461858535e_form,Ys: list_l461858535e_form] :
      ( ( concat1664984646e_form @ ( append1797078012e_form @ Xs @ Ys ) )
      = ( append1038020460e_form @ ( concat1664984646e_form @ Xs ) @ ( concat1664984646e_form @ Ys ) ) ) ).

% concat_append
thf(fact_243_concat__append,axiom,
    ! [Xs: list_list_nat,Ys: list_list_nat] :
      ( ( concat_nat @ ( append_list_nat @ Xs @ Ys ) )
      = ( append_nat @ ( concat_nat @ Xs ) @ ( concat_nat @ Ys ) ) ) ).

% concat_append
thf(fact_244_Cons__listrel1__Cons,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Y: prover1687215943e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre502458152e_form @ R ) )
      = ( ( ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y ) @ R )
          & ( Xs = Ys ) )
        | ( ( X2 = Y )
          & ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_245_Cons__listrel1__Cons,axiom,
    ! [X2: nat,Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X2 @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
      = ( ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y ) @ R )
          & ( Xs = Ys ) )
        | ( ( X2 = Y )
          & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1_Cons
thf(fact_246_lexord__cons__cons,axiom,
    ! [A: prover1687215943e_form,X2: list_P512754263e_form,B: prover1687215943e_form,Y: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ A @ X2 ) @ ( cons_P1475164433e_form @ B @ Y ) ) @ ( lexord1848469012e_form @ R ) )
      = ( ( member189065477e_form @ ( produc1018812320e_form @ A @ B ) @ R )
        | ( ( A = B )
          & ( member650892795e_form @ ( produc891809686e_form @ X2 @ Y ) @ ( lexord1848469012e_form @ R ) ) ) ) ) ).

% lexord_cons_cons
thf(fact_247_lexord__cons__cons,axiom,
    ! [A: nat,X2: list_nat,B: nat,Y: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ A @ X2 ) @ ( cons_nat @ B @ Y ) ) @ ( lexord_nat @ R ) )
      = ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R )
        | ( ( A = B )
          & ( member1926390090st_nat @ ( produc1625736153st_nat @ X2 @ Y ) @ ( lexord_nat @ R ) ) ) ) ) ).

% lexord_cons_cons
thf(fact_248_lexord__Nil__left,axiom,
    ! [Y: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ Y ) @ ( lexord1848469012e_form @ R ) )
      = ( ? [A6: prover1687215943e_form,X3: list_P512754263e_form] :
            ( Y
            = ( cons_P1475164433e_form @ A6 @ X3 ) ) ) ) ).

% lexord_Nil_left
thf(fact_249_lexord__Nil__left,axiom,
    ! [Y: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ Y ) @ ( lexord_nat @ R ) )
      = ( ? [A6: nat,X3: list_nat] :
            ( Y
            = ( cons_nat @ A6 @ X3 ) ) ) ) ).

% lexord_Nil_left
thf(fact_250_Cons__in__subseqsD,axiom,
    ! [Y: prover1687215943e_form,Ys: list_P512754263e_form,Xs: list_P512754263e_form] :
      ( ( member1828782574e_form @ ( cons_P1475164433e_form @ Y @ Ys ) @ ( set_li1219651714e_form @ ( subseq1471997234e_form @ Xs ) ) )
     => ( member1828782574e_form @ Ys @ ( set_li1219651714e_form @ ( subseq1471997234e_form @ Xs ) ) ) ) ).

% Cons_in_subseqsD
thf(fact_251_Cons__in__subseqsD,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_nat] :
      ( ( member_list_nat @ ( cons_nat @ Y @ Ys ) @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
     => ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ).

% Cons_in_subseqsD
thf(fact_252_listrel1I2,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form,X2: prover1687215943e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) )
     => ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ ( cons_P1475164433e_form @ X2 @ Ys ) ) @ ( listre502458152e_form @ R ) ) ) ).

% listrel1I2
thf(fact_253_listrel1I2,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1986765409at_nat,X2: nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X2 @ Xs ) @ ( cons_nat @ X2 @ Ys ) ) @ ( listrel1_nat @ R ) ) ) ).

% listrel1I2
thf(fact_254_not__listrel1__Nil,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ Xs @ nil_Pr1384483009e_form ) @ ( listre502458152e_form @ R ) ) ).

% not_listrel1_Nil
thf(fact_255_not__listrel1__Nil,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ nil_nat ) @ ( listrel1_nat @ R ) ) ).

% not_listrel1_Nil
thf(fact_256_not__Nil__listrel1,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ Xs ) @ ( listre502458152e_form @ R ) ) ).

% not_Nil_listrel1
thf(fact_257_not__Nil__listrel1,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ Xs ) @ ( listrel1_nat @ R ) ) ).

% not_Nil_listrel1
thf(fact_258_append__listrel1I,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form,Us2: list_P512754263e_form,Vs: list_P512754263e_form] :
      ( ( ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) )
          & ( Us2 = Vs ) )
        | ( ( Xs = Ys )
          & ( member650892795e_form @ ( produc891809686e_form @ Us2 @ Vs ) @ ( listre502458152e_form @ R ) ) ) )
     => ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Us2 ) @ ( append1038020460e_form @ Ys @ Vs ) ) @ ( listre502458152e_form @ R ) ) ) ).

% append_listrel1I
thf(fact_259_append__listrel1I,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1986765409at_nat,Us2: list_nat,Vs: list_nat] :
      ( ( ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
          & ( Us2 = Vs ) )
        | ( ( Xs = Ys )
          & ( member1926390090st_nat @ ( produc1625736153st_nat @ Us2 @ Vs ) @ ( listrel1_nat @ R ) ) ) )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Us2 ) @ ( append_nat @ Ys @ Vs ) ) @ ( listrel1_nat @ R ) ) ) ).

% append_listrel1I
thf(fact_260_concat_Osimps_I1_J,axiom,
    ( ( concat1664984646e_form @ nil_li1393862353e_form )
    = nil_Pr1384483009e_form ) ).

% concat.simps(1)
thf(fact_261_concat_Osimps_I1_J,axiom,
    ( ( concat_nat @ nil_list_nat )
    = nil_nat ) ).

% concat.simps(1)
thf(fact_262_concat_Osimps_I2_J,axiom,
    ! [X2: list_P512754263e_form,Xs: list_l461858535e_form] :
      ( ( concat1664984646e_form @ ( cons_l1379921697e_form @ X2 @ Xs ) )
      = ( append1038020460e_form @ X2 @ ( concat1664984646e_form @ Xs ) ) ) ).

% concat.simps(2)
thf(fact_263_concat_Osimps_I2_J,axiom,
    ! [X2: list_nat,Xs: list_list_nat] :
      ( ( concat_nat @ ( cons_list_nat @ X2 @ Xs ) )
      = ( append_nat @ X2 @ ( concat_nat @ Xs ) ) ) ).

% concat.simps(2)
thf(fact_264_lexord__Nil__right,axiom,
    ! [X2: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ X2 @ nil_Pr1384483009e_form ) @ ( lexord1848469012e_form @ R ) ) ).

% lexord_Nil_right
thf(fact_265_lexord__Nil__right,axiom,
    ! [X2: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ X2 @ nil_nat ) @ ( lexord_nat @ R ) ) ).

% lexord_Nil_right
thf(fact_266_lexord__append__leftI,axiom,
    ! [U: list_P512754263e_form,V: list_P512754263e_form,R: set_Pr1189404964e_form,X2: list_P512754263e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ U @ V ) @ ( lexord1848469012e_form @ R ) )
     => ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ X2 @ U ) @ ( append1038020460e_form @ X2 @ V ) ) @ ( lexord1848469012e_form @ R ) ) ) ).

% lexord_append_leftI
thf(fact_267_lexord__append__leftI,axiom,
    ! [U: list_nat,V: list_nat,R: set_Pr1986765409at_nat,X2: list_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ U @ V ) @ ( lexord_nat @ R ) )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ X2 @ U ) @ ( append_nat @ X2 @ V ) ) @ ( lexord_nat @ R ) ) ) ).

% lexord_append_leftI
thf(fact_268_listrel1I1,axiom,
    ! [X2: prover1687215943e_form,Y: prover1687215943e_form,R: set_Pr1189404964e_form,Xs: list_P512754263e_form] :
      ( ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y ) @ R )
     => ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ ( cons_P1475164433e_form @ Y @ Xs ) ) @ ( listre502458152e_form @ R ) ) ) ).

% listrel1I1
thf(fact_269_listrel1I1,axiom,
    ! [X2: nat,Y: nat,R: set_Pr1986765409at_nat,Xs: list_nat] :
      ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y ) @ R )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X2 @ Xs ) @ ( cons_nat @ Y @ Xs ) ) @ ( listrel1_nat @ R ) ) ) ).

% listrel1I1
thf(fact_270_Cons__listrel1E1,axiom,
    ! [X2: prover1687215943e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ Ys ) @ ( listre502458152e_form @ R ) )
     => ( ! [Y2: prover1687215943e_form] :
            ( ( Ys
              = ( cons_P1475164433e_form @ Y2 @ Xs ) )
           => ~ ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y2 ) @ R ) )
       => ~ ! [Zs: list_P512754263e_form] :
              ( ( Ys
                = ( cons_P1475164433e_form @ X2 @ Zs ) )
             => ~ ( member650892795e_form @ ( produc891809686e_form @ Xs @ Zs ) @ ( listre502458152e_form @ R ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_271_Cons__listrel1E1,axiom,
    ! [X2: nat,Xs: list_nat,Ys: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X2 @ Xs ) @ Ys ) @ ( listrel1_nat @ R ) )
     => ( ! [Y2: nat] :
            ( ( Ys
              = ( cons_nat @ Y2 @ Xs ) )
           => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y2 ) @ R ) )
       => ~ ! [Zs: list_nat] :
              ( ( Ys
                = ( cons_nat @ X2 @ Zs ) )
             => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Zs ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E1
thf(fact_272_Cons__listrel1E2,axiom,
    ! [Xs: list_P512754263e_form,Y: prover1687215943e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre502458152e_form @ R ) )
     => ( ! [X: prover1687215943e_form] :
            ( ( Xs
              = ( cons_P1475164433e_form @ X @ Ys ) )
           => ~ ( member189065477e_form @ ( produc1018812320e_form @ X @ Y ) @ R ) )
       => ~ ! [Zs: list_P512754263e_form] :
              ( ( Xs
                = ( cons_P1475164433e_form @ Y @ Zs ) )
             => ~ ( member650892795e_form @ ( produc891809686e_form @ Zs @ Ys ) @ ( listre502458152e_form @ R ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_273_Cons__listrel1E2,axiom,
    ! [Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
     => ( ! [X: nat] :
            ( ( Xs
              = ( cons_nat @ X @ Ys ) )
           => ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R ) )
       => ~ ! [Zs: list_nat] :
              ( ( Xs
                = ( cons_nat @ Y @ Zs ) )
             => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Zs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% Cons_listrel1E2
thf(fact_274_lexord__partial__trans,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat,Ys: list_nat,Zs2: list_nat] :
      ( ! [X: nat,Y2: nat,Z: nat] :
          ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
         => ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ R )
           => ( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y2 @ Z ) @ R )
             => ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Z ) @ R ) ) ) )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( lexord_nat @ R ) )
       => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lexord_nat @ R ) )
         => ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Zs2 ) @ ( lexord_nat @ R ) ) ) ) ) ).

% lexord_partial_trans
thf(fact_275_lexord__append__leftD,axiom,
    ! [X2: list_P512754263e_form,U: list_P512754263e_form,V: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ X2 @ U ) @ ( append1038020460e_form @ X2 @ V ) ) @ ( lexord1848469012e_form @ R ) )
     => ( ! [A3: prover1687215943e_form] :
            ~ ( member189065477e_form @ ( produc1018812320e_form @ A3 @ A3 ) @ R )
       => ( member650892795e_form @ ( produc891809686e_form @ U @ V ) @ ( lexord1848469012e_form @ R ) ) ) ) ).

% lexord_append_leftD
thf(fact_276_lexord__append__leftD,axiom,
    ! [X2: list_nat,U: list_nat,V: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ X2 @ U ) @ ( append_nat @ X2 @ V ) ) @ ( lexord_nat @ R ) )
     => ( ! [A3: nat] :
            ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ A3 @ A3 ) @ R )
       => ( member1926390090st_nat @ ( produc1625736153st_nat @ U @ V ) @ ( lexord_nat @ R ) ) ) ) ).

% lexord_append_leftD
thf(fact_277_lexord__append__rightI,axiom,
    ! [Y: list_P512754263e_form,X2: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ? [B4: prover1687215943e_form,Z3: list_P512754263e_form] :
          ( Y
          = ( cons_P1475164433e_form @ B4 @ Z3 ) )
     => ( member650892795e_form @ ( produc891809686e_form @ X2 @ ( append1038020460e_form @ X2 @ Y ) ) @ ( lexord1848469012e_form @ R ) ) ) ).

% lexord_append_rightI
thf(fact_278_lexord__append__rightI,axiom,
    ! [Y: list_nat,X2: list_nat,R: set_Pr1986765409at_nat] :
      ( ? [B4: nat,Z3: list_nat] :
          ( Y
          = ( cons_nat @ B4 @ Z3 ) )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ X2 @ ( append_nat @ X2 @ Y ) ) @ ( lexord_nat @ R ) ) ) ).

% lexord_append_rightI
thf(fact_279_concat__eq__appendD,axiom,
    ! [Xss2: list_l461858535e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( ( concat1664984646e_form @ Xss2 )
        = ( append1038020460e_form @ Ys @ Zs2 ) )
     => ( ( Xss2 != nil_li1393862353e_form )
       => ? [Xss12: list_l461858535e_form,Xs2: list_P512754263e_form,Xs5: list_P512754263e_form,Xss23: list_l461858535e_form] :
            ( ( Xss2
              = ( append1797078012e_form @ Xss12 @ ( cons_l1379921697e_form @ ( append1038020460e_form @ Xs2 @ Xs5 ) @ Xss23 ) ) )
            & ( Ys
              = ( append1038020460e_form @ ( concat1664984646e_form @ Xss12 ) @ Xs2 ) )
            & ( Zs2
              = ( append1038020460e_form @ Xs5 @ ( concat1664984646e_form @ Xss23 ) ) ) ) ) ) ).

% concat_eq_appendD
thf(fact_280_concat__eq__appendD,axiom,
    ! [Xss2: list_list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( ( concat_nat @ Xss2 )
        = ( append_nat @ Ys @ Zs2 ) )
     => ( ( Xss2 != nil_list_nat )
       => ? [Xss12: list_list_nat,Xs2: list_nat,Xs5: list_nat,Xss23: list_list_nat] :
            ( ( Xss2
              = ( append_list_nat @ Xss12 @ ( cons_list_nat @ ( append_nat @ Xs2 @ Xs5 ) @ Xss23 ) ) )
            & ( Ys
              = ( append_nat @ ( concat_nat @ Xss12 ) @ Xs2 ) )
            & ( Zs2
              = ( append_nat @ Xs5 @ ( concat_nat @ Xss23 ) ) ) ) ) ) ).

% concat_eq_appendD
thf(fact_281_listrel1E,axiom,
    ! [Xs: list_P512754263e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) )
     => ~ ! [X: prover1687215943e_form,Y2: prover1687215943e_form] :
            ( ( member189065477e_form @ ( produc1018812320e_form @ X @ Y2 ) @ R )
           => ! [Us3: list_P512754263e_form,Vs2: list_P512754263e_form] :
                ( ( Xs
                  = ( append1038020460e_form @ Us3 @ ( cons_P1475164433e_form @ X @ Vs2 ) ) )
               => ( Ys
                 != ( append1038020460e_form @ Us3 @ ( cons_P1475164433e_form @ Y2 @ Vs2 ) ) ) ) ) ) ).

% listrel1E
thf(fact_282_listrel1E,axiom,
    ! [Xs: list_nat,Ys: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
     => ~ ! [X: nat,Y2: nat] :
            ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ R )
           => ! [Us3: list_nat,Vs2: list_nat] :
                ( ( Xs
                  = ( append_nat @ Us3 @ ( cons_nat @ X @ Vs2 ) ) )
               => ( Ys
                 != ( append_nat @ Us3 @ ( cons_nat @ Y2 @ Vs2 ) ) ) ) ) ) ).

% listrel1E
thf(fact_283_listrel1I,axiom,
    ! [X2: prover1687215943e_form,Y: prover1687215943e_form,R: set_Pr1189404964e_form,Xs: list_P512754263e_form,Us2: list_P512754263e_form,Vs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y ) @ R )
     => ( ( Xs
          = ( append1038020460e_form @ Us2 @ ( cons_P1475164433e_form @ X2 @ Vs ) ) )
       => ( ( Ys
            = ( append1038020460e_form @ Us2 @ ( cons_P1475164433e_form @ Y @ Vs ) ) )
         => ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre502458152e_form @ R ) ) ) ) ) ).

% listrel1I
thf(fact_284_listrel1I,axiom,
    ! [X2: nat,Y: nat,R: set_Pr1986765409at_nat,Xs: list_nat,Us2: list_nat,Vs: list_nat,Ys: list_nat] :
      ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y ) @ R )
     => ( ( Xs
          = ( append_nat @ Us2 @ ( cons_nat @ X2 @ Vs ) ) )
       => ( ( Ys
            = ( append_nat @ Us2 @ ( cons_nat @ Y @ Vs ) ) )
         => ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).

% listrel1I
thf(fact_285_lexord__append__left__rightI,axiom,
    ! [A: prover1687215943e_form,B: prover1687215943e_form,R: set_Pr1189404964e_form,U: list_P512754263e_form,X2: list_P512754263e_form,Y: list_P512754263e_form] :
      ( ( member189065477e_form @ ( produc1018812320e_form @ A @ B ) @ R )
     => ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ U @ ( cons_P1475164433e_form @ A @ X2 ) ) @ ( append1038020460e_form @ U @ ( cons_P1475164433e_form @ B @ Y ) ) ) @ ( lexord1848469012e_form @ R ) ) ) ).

% lexord_append_left_rightI
thf(fact_286_lexord__append__left__rightI,axiom,
    ! [A: nat,B: nat,R: set_Pr1986765409at_nat,U: list_nat,X2: list_nat,Y: list_nat] :
      ( ( member701585322at_nat @ ( product_Pair_nat_nat @ A @ B ) @ R )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ U @ ( cons_nat @ A @ X2 ) ) @ ( append_nat @ U @ ( cons_nat @ B @ Y ) ) ) @ ( lexord_nat @ R ) ) ) ).

% lexord_append_left_rightI
thf(fact_287_lexord__same__pref__if__irrefl,axiom,
    ! [R: set_Pr1189404964e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ( irrefl2121388754e_form @ R )
     => ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Ys ) @ ( append1038020460e_form @ Xs @ Zs2 ) ) @ ( lexord1848469012e_form @ R ) )
        = ( member650892795e_form @ ( produc891809686e_form @ Ys @ Zs2 ) @ ( lexord1848469012e_form @ R ) ) ) ) ).

% lexord_same_pref_if_irrefl
thf(fact_288_lexord__same__pref__if__irrefl,axiom,
    ! [R: set_Pr1986765409at_nat,Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ( irrefl_nat @ R )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lexord_nat @ R ) )
        = ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lexord_nat @ R ) ) ) ) ).

% lexord_same_pref_if_irrefl
thf(fact_289_listrel_Ocases,axiom,
    ! [A1: list_P512754263e_form,A2: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ A1 @ A2 ) @ ( listre1908795590e_form @ R ) )
     => ( ( ( A1 = nil_Pr1384483009e_form )
         => ( A2 != nil_Pr1384483009e_form ) )
       => ~ ! [X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form] :
              ( ( A1
                = ( cons_P1475164433e_form @ X @ Xs2 ) )
             => ! [Ys2: list_P512754263e_form] :
                  ( ( A2
                    = ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
                 => ( ( member189065477e_form @ ( produc1018812320e_form @ X @ Y2 ) @ R )
                   => ~ ( member650892795e_form @ ( produc891809686e_form @ Xs2 @ Ys2 ) @ ( listre1908795590e_form @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_290_listrel_Ocases,axiom,
    ! [A1: list_P512754263e_form,A2: list_nat,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ A1 @ A2 ) @ ( listre483706378rm_nat @ R ) )
     => ( ( ( A1 = nil_Pr1384483009e_form )
         => ( A2 != nil_nat ) )
       => ~ ! [X: prover1687215943e_form,Y2: nat,Xs2: list_P512754263e_form] :
              ( ( A1
                = ( cons_P1475164433e_form @ X @ Xs2 ) )
             => ! [Ys2: list_nat] :
                  ( ( A2
                    = ( cons_nat @ Y2 @ Ys2 ) )
                 => ( ( member986698273rm_nat @ ( produc1041874352rm_nat @ X @ Y2 ) @ R )
                   => ~ ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs2 @ Ys2 ) @ ( listre483706378rm_nat @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_291_listrel_Ocases,axiom,
    ! [A1: list_nat,A2: list_P512754263e_form,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ A1 @ A2 ) @ ( listre318297994e_form @ R ) )
     => ( ( ( A1 = nil_nat )
         => ( A2 != nil_Pr1384483009e_form ) )
       => ~ ! [X: nat,Y2: prover1687215943e_form,Xs2: list_nat] :
              ( ( A1
                = ( cons_nat @ X @ Xs2 ) )
             => ! [Ys2: list_P512754263e_form] :
                  ( ( A2
                    = ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
                 => ( ( member18158113e_form @ ( produc876465968e_form @ X @ Y2 ) @ R )
                   => ~ ( member1471151041e_form @ ( produc1617574096e_form @ Xs2 @ Ys2 ) @ ( listre318297994e_form @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_292_listrel_Ocases,axiom,
    ! [A1: list_nat,A2: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ A1 @ A2 ) @ ( listrel_nat_nat @ R ) )
     => ( ( ( A1 = nil_nat )
         => ( A2 != nil_nat ) )
       => ~ ! [X: nat,Y2: nat,Xs2: list_nat] :
              ( ( A1
                = ( cons_nat @ X @ Xs2 ) )
             => ! [Ys2: list_nat] :
                  ( ( A2
                    = ( cons_nat @ Y2 @ Ys2 ) )
                 => ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ R )
                   => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs2 @ Ys2 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_293_listrel_Ocases,axiom,
    ! [A1: list_s1200803384elle_U,A2: list_n2139828004le_U_o,R: set_Pr1072215906le_U_o] :
      ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ A1 @ A2 ) @ ( listre290852044le_U_o @ R ) )
     => ( ( ( A1 = nil_se944326968elle_U )
         => ( A2 != nil_na1584420238le_U_o ) )
       => ~ ! [X: set_Pr619177522elle_U,Y2: nat > list_P796095576elle_U > $o,Xs2: list_s1200803384elle_U] :
              ( ( A1
                = ( cons_s32021736elle_U @ X @ Xs2 ) )
             => ! [Ys2: list_n2139828004le_U_o] :
                  ( ( A2
                    = ( cons_n50929118le_U_o @ Y2 @ Ys2 ) )
                 => ( ( member1933006123le_U_o @ ( produc1069574002le_U_o @ X @ Y2 ) @ R )
                   => ~ ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs2 @ Ys2 ) @ ( listre290852044le_U_o @ R ) ) ) ) ) ) ) ).

% listrel.cases
thf(fact_294_listrel_Osimps,axiom,
    ! [A1: list_P512754263e_form,A2: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ A1 @ A2 ) @ ( listre1908795590e_form @ R ) )
      = ( ( ( A1 = nil_Pr1384483009e_form )
          & ( A2 = nil_Pr1384483009e_form ) )
        | ? [X3: prover1687215943e_form,Y3: prover1687215943e_form,Xs4: list_P512754263e_form,Ys3: list_P512754263e_form] :
            ( ( A1
              = ( cons_P1475164433e_form @ X3 @ Xs4 ) )
            & ( A2
              = ( cons_P1475164433e_form @ Y3 @ Ys3 ) )
            & ( member189065477e_form @ ( produc1018812320e_form @ X3 @ Y3 ) @ R )
            & ( member650892795e_form @ ( produc891809686e_form @ Xs4 @ Ys3 ) @ ( listre1908795590e_form @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_295_listrel_Osimps,axiom,
    ! [A1: list_P512754263e_form,A2: list_nat,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ A1 @ A2 ) @ ( listre483706378rm_nat @ R ) )
      = ( ( ( A1 = nil_Pr1384483009e_form )
          & ( A2 = nil_nat ) )
        | ? [X3: prover1687215943e_form,Y3: nat,Xs4: list_P512754263e_form,Ys3: list_nat] :
            ( ( A1
              = ( cons_P1475164433e_form @ X3 @ Xs4 ) )
            & ( A2
              = ( cons_nat @ Y3 @ Ys3 ) )
            & ( member986698273rm_nat @ ( produc1041874352rm_nat @ X3 @ Y3 ) @ R )
            & ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs4 @ Ys3 ) @ ( listre483706378rm_nat @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_296_listrel_Osimps,axiom,
    ! [A1: list_nat,A2: list_P512754263e_form,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ A1 @ A2 ) @ ( listre318297994e_form @ R ) )
      = ( ( ( A1 = nil_nat )
          & ( A2 = nil_Pr1384483009e_form ) )
        | ? [X3: nat,Y3: prover1687215943e_form,Xs4: list_nat,Ys3: list_P512754263e_form] :
            ( ( A1
              = ( cons_nat @ X3 @ Xs4 ) )
            & ( A2
              = ( cons_P1475164433e_form @ Y3 @ Ys3 ) )
            & ( member18158113e_form @ ( produc876465968e_form @ X3 @ Y3 ) @ R )
            & ( member1471151041e_form @ ( produc1617574096e_form @ Xs4 @ Ys3 ) @ ( listre318297994e_form @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_297_listrel_Osimps,axiom,
    ! [A1: list_nat,A2: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ A1 @ A2 ) @ ( listrel_nat_nat @ R ) )
      = ( ( ( A1 = nil_nat )
          & ( A2 = nil_nat ) )
        | ? [X3: nat,Y3: nat,Xs4: list_nat,Ys3: list_nat] :
            ( ( A1
              = ( cons_nat @ X3 @ Xs4 ) )
            & ( A2
              = ( cons_nat @ Y3 @ Ys3 ) )
            & ( member701585322at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R )
            & ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs4 @ Ys3 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_298_listrel_Osimps,axiom,
    ! [A1: list_s1200803384elle_U,A2: list_n2139828004le_U_o,R: set_Pr1072215906le_U_o] :
      ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ A1 @ A2 ) @ ( listre290852044le_U_o @ R ) )
      = ( ( ( A1 = nil_se944326968elle_U )
          & ( A2 = nil_na1584420238le_U_o ) )
        | ? [X3: set_Pr619177522elle_U,Y3: nat > list_P796095576elle_U > $o,Xs4: list_s1200803384elle_U,Ys3: list_n2139828004le_U_o] :
            ( ( A1
              = ( cons_s32021736elle_U @ X3 @ Xs4 ) )
            & ( A2
              = ( cons_n50929118le_U_o @ Y3 @ Ys3 ) )
            & ( member1933006123le_U_o @ ( produc1069574002le_U_o @ X3 @ Y3 ) @ R )
            & ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs4 @ Ys3 ) @ ( listre290852044le_U_o @ R ) ) ) ) ) ).

% listrel.simps
thf(fact_299_listrel_Oinducts,axiom,
    ! [X12: list_P512754263e_form,X24: list_P512754263e_form,R: set_Pr1189404964e_form,P: list_P512754263e_form > list_P512754263e_form > $o] :
      ( ( member650892795e_form @ ( produc891809686e_form @ X12 @ X24 ) @ ( listre1908795590e_form @ R ) )
     => ( ( P @ nil_Pr1384483009e_form @ nil_Pr1384483009e_form )
       => ( ! [X: prover1687215943e_form,Y2: prover1687215943e_form,Xs2: list_P512754263e_form,Ys2: list_P512754263e_form] :
              ( ( member189065477e_form @ ( produc1018812320e_form @ X @ Y2 ) @ R )
             => ( ( member650892795e_form @ ( produc891809686e_form @ Xs2 @ Ys2 ) @ ( listre1908795590e_form @ R ) )
               => ( ( P @ Xs2 @ Ys2 )
                 => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) ) ) )
         => ( P @ X12 @ X24 ) ) ) ) ).

% listrel.inducts
thf(fact_300_listrel_Oinducts,axiom,
    ! [X12: list_P512754263e_form,X24: list_nat,R: set_Pr957084504rm_nat,P: list_P512754263e_form > list_nat > $o] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ X12 @ X24 ) @ ( listre483706378rm_nat @ R ) )
     => ( ( P @ nil_Pr1384483009e_form @ nil_nat )
       => ( ! [X: prover1687215943e_form,Y2: nat,Xs2: list_P512754263e_form,Ys2: list_nat] :
              ( ( member986698273rm_nat @ ( produc1041874352rm_nat @ X @ Y2 ) @ R )
             => ( ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs2 @ Ys2 ) @ ( listre483706378rm_nat @ R ) )
               => ( ( P @ Xs2 @ Ys2 )
                 => ( P @ ( cons_P1475164433e_form @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) ) ) )
         => ( P @ X12 @ X24 ) ) ) ) ).

% listrel.inducts
thf(fact_301_listrel_Oinducts,axiom,
    ! [X12: list_nat,X24: list_P512754263e_form,R: set_Pr816919384e_form,P: list_nat > list_P512754263e_form > $o] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ X12 @ X24 ) @ ( listre318297994e_form @ R ) )
     => ( ( P @ nil_nat @ nil_Pr1384483009e_form )
       => ( ! [X: nat,Y2: prover1687215943e_form,Xs2: list_nat,Ys2: list_P512754263e_form] :
              ( ( member18158113e_form @ ( produc876465968e_form @ X @ Y2 ) @ R )
             => ( ( member1471151041e_form @ ( produc1617574096e_form @ Xs2 @ Ys2 ) @ ( listre318297994e_form @ R ) )
               => ( ( P @ Xs2 @ Ys2 )
                 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_P1475164433e_form @ Y2 @ Ys2 ) ) ) ) )
         => ( P @ X12 @ X24 ) ) ) ) ).

% listrel.inducts
thf(fact_302_listrel_Oinducts,axiom,
    ! [X12: list_nat,X24: list_nat,R: set_Pr1986765409at_nat,P: list_nat > list_nat > $o] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ X12 @ X24 ) @ ( listrel_nat_nat @ R ) )
     => ( ( P @ nil_nat @ nil_nat )
       => ( ! [X: nat,Y2: nat,Xs2: list_nat,Ys2: list_nat] :
              ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y2 ) @ R )
             => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs2 @ Ys2 ) @ ( listrel_nat_nat @ R ) )
               => ( ( P @ Xs2 @ Ys2 )
                 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y2 @ Ys2 ) ) ) ) )
         => ( P @ X12 @ X24 ) ) ) ) ).

% listrel.inducts
thf(fact_303_listrel_Oinducts,axiom,
    ! [X12: list_s1200803384elle_U,X24: list_n2139828004le_U_o,R: set_Pr1072215906le_U_o,P: list_s1200803384elle_U > list_n2139828004le_U_o > $o] :
      ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ X12 @ X24 ) @ ( listre290852044le_U_o @ R ) )
     => ( ( P @ nil_se944326968elle_U @ nil_na1584420238le_U_o )
       => ( ! [X: set_Pr619177522elle_U,Y2: nat > list_P796095576elle_U > $o,Xs2: list_s1200803384elle_U,Ys2: list_n2139828004le_U_o] :
              ( ( member1933006123le_U_o @ ( produc1069574002le_U_o @ X @ Y2 ) @ R )
             => ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs2 @ Ys2 ) @ ( listre290852044le_U_o @ R ) )
               => ( ( P @ Xs2 @ Ys2 )
                 => ( P @ ( cons_s32021736elle_U @ X @ Xs2 ) @ ( cons_n50929118le_U_o @ Y2 @ Ys2 ) ) ) ) )
         => ( P @ X12 @ X24 ) ) ) ) ).

% listrel.inducts
thf(fact_304_listrel_ONil,axiom,
    ! [R: set_Pr1189404964e_form] : ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ nil_Pr1384483009e_form ) @ ( listre1908795590e_form @ R ) ) ).

% listrel.Nil
thf(fact_305_listrel_ONil,axiom,
    ! [R: set_Pr957084504rm_nat] : ( member1449753665st_nat @ ( produc1897654224st_nat @ nil_Pr1384483009e_form @ nil_nat ) @ ( listre483706378rm_nat @ R ) ) ).

% listrel.Nil
thf(fact_306_listrel_ONil,axiom,
    ! [R: set_Pr816919384e_form] : ( member1471151041e_form @ ( produc1617574096e_form @ nil_nat @ nil_Pr1384483009e_form ) @ ( listre318297994e_form @ R ) ) ).

% listrel.Nil
thf(fact_307_listrel_ONil,axiom,
    ! [R: set_Pr1986765409at_nat] : ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ nil_nat ) @ ( listrel_nat_nat @ R ) ) ).

% listrel.Nil
thf(fact_308_listrel__Nil1,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ Xs ) @ ( listre1908795590e_form @ R ) )
     => ( Xs = nil_Pr1384483009e_form ) ) ).

% listrel_Nil1
thf(fact_309_listrel__Nil1,axiom,
    ! [Xs: list_nat,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ nil_Pr1384483009e_form @ Xs ) @ ( listre483706378rm_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil1
thf(fact_310_listrel__Nil1,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ nil_nat @ Xs ) @ ( listre318297994e_form @ R ) )
     => ( Xs = nil_Pr1384483009e_form ) ) ).

% listrel_Nil1
thf(fact_311_listrel__Nil1,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ Xs ) @ ( listrel_nat_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil1
thf(fact_312_listrel__Nil2,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ nil_Pr1384483009e_form ) @ ( listre1908795590e_form @ R ) )
     => ( Xs = nil_Pr1384483009e_form ) ) ).

% listrel_Nil2
thf(fact_313_listrel__Nil2,axiom,
    ! [Xs: list_nat,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ Xs @ nil_Pr1384483009e_form ) @ ( listre318297994e_form @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil2
thf(fact_314_listrel__Nil2,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs @ nil_nat ) @ ( listre483706378rm_nat @ R ) )
     => ( Xs = nil_Pr1384483009e_form ) ) ).

% listrel_Nil2
thf(fact_315_listrel__Nil2,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ nil_nat ) @ ( listrel_nat_nat @ R ) )
     => ( Xs = nil_nat ) ) ).

% listrel_Nil2
thf(fact_316_listrel__Cons2,axiom,
    ! [Xs: list_P512754263e_form,Y: prover1687215943e_form,Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre1908795590e_form @ R ) )
     => ~ ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] :
            ( ( Xs
              = ( cons_P1475164433e_form @ X @ Xs2 ) )
           => ( ( member189065477e_form @ ( produc1018812320e_form @ X @ Y ) @ R )
             => ~ ( member650892795e_form @ ( produc891809686e_form @ Xs2 @ Ys ) @ ( listre1908795590e_form @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_317_listrel__Cons2,axiom,
    ! [Xs: list_nat,Y: prover1687215943e_form,Ys: list_P512754263e_form,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ Xs @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre318297994e_form @ R ) )
     => ~ ! [X: nat,Xs2: list_nat] :
            ( ( Xs
              = ( cons_nat @ X @ Xs2 ) )
           => ( ( member18158113e_form @ ( produc876465968e_form @ X @ Y ) @ R )
             => ~ ( member1471151041e_form @ ( produc1617574096e_form @ Xs2 @ Ys ) @ ( listre318297994e_form @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_318_listrel__Cons2,axiom,
    ! [Xs: list_P512754263e_form,Y: nat,Ys: list_nat,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listre483706378rm_nat @ R ) )
     => ~ ! [X: prover1687215943e_form,Xs2: list_P512754263e_form] :
            ( ( Xs
              = ( cons_P1475164433e_form @ X @ Xs2 ) )
           => ( ( member986698273rm_nat @ ( produc1041874352rm_nat @ X @ Y ) @ R )
             => ~ ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs2 @ Ys ) @ ( listre483706378rm_nat @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_319_listrel__Cons2,axiom,
    ! [Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listrel_nat_nat @ R ) )
     => ~ ! [X: nat,Xs2: list_nat] :
            ( ( Xs
              = ( cons_nat @ X @ Xs2 ) )
           => ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
             => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs2 @ Ys ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_320_listrel__Cons2,axiom,
    ! [Xs: list_s1200803384elle_U,Y: nat > list_P796095576elle_U > $o,Ys: list_n2139828004le_U_o,R: set_Pr1072215906le_U_o] :
      ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs @ ( cons_n50929118le_U_o @ Y @ Ys ) ) @ ( listre290852044le_U_o @ R ) )
     => ~ ! [X: set_Pr619177522elle_U,Xs2: list_s1200803384elle_U] :
            ( ( Xs
              = ( cons_s32021736elle_U @ X @ Xs2 ) )
           => ( ( member1933006123le_U_o @ ( produc1069574002le_U_o @ X @ Y ) @ R )
             => ~ ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs2 @ Ys ) @ ( listre290852044le_U_o @ R ) ) ) ) ) ).

% listrel_Cons2
thf(fact_321_listrel__Cons1,axiom,
    ! [Y: prover1687215943e_form,Ys: list_P512754263e_form,Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ Y @ Ys ) @ Xs ) @ ( listre1908795590e_form @ R ) )
     => ~ ! [Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
            ( ( Xs
              = ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
           => ( ( member189065477e_form @ ( produc1018812320e_form @ Y @ Y2 ) @ R )
             => ~ ( member650892795e_form @ ( produc891809686e_form @ Ys @ Ys2 ) @ ( listre1908795590e_form @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_322_listrel__Cons1,axiom,
    ! [Y: prover1687215943e_form,Ys: list_P512754263e_form,Xs: list_nat,R: set_Pr957084504rm_nat] :
      ( ( member1449753665st_nat @ ( produc1897654224st_nat @ ( cons_P1475164433e_form @ Y @ Ys ) @ Xs ) @ ( listre483706378rm_nat @ R ) )
     => ~ ! [Y2: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y2 @ Ys2 ) )
           => ( ( member986698273rm_nat @ ( produc1041874352rm_nat @ Y @ Y2 ) @ R )
             => ~ ( member1449753665st_nat @ ( produc1897654224st_nat @ Ys @ Ys2 ) @ ( listre483706378rm_nat @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_323_listrel__Cons1,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_P512754263e_form,R: set_Pr816919384e_form] :
      ( ( member1471151041e_form @ ( produc1617574096e_form @ ( cons_nat @ Y @ Ys ) @ Xs ) @ ( listre318297994e_form @ R ) )
     => ~ ! [Y2: prover1687215943e_form,Ys2: list_P512754263e_form] :
            ( ( Xs
              = ( cons_P1475164433e_form @ Y2 @ Ys2 ) )
           => ( ( member18158113e_form @ ( produc876465968e_form @ Y @ Y2 ) @ R )
             => ~ ( member1471151041e_form @ ( produc1617574096e_form @ Ys @ Ys2 ) @ ( listre318297994e_form @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_324_listrel__Cons1,axiom,
    ! [Y: nat,Ys: list_nat,Xs: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ Y @ Ys ) @ Xs ) @ ( listrel_nat_nat @ R ) )
     => ~ ! [Y2: nat,Ys2: list_nat] :
            ( ( Xs
              = ( cons_nat @ Y2 @ Ys2 ) )
           => ( ( member701585322at_nat @ ( product_Pair_nat_nat @ Y @ Y2 ) @ R )
             => ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Ys2 ) @ ( listrel_nat_nat @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_325_listrel__Cons1,axiom,
    ! [Y: set_Pr619177522elle_U,Ys: list_s1200803384elle_U,Xs: list_n2139828004le_U_o,R: set_Pr1072215906le_U_o] :
      ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ ( cons_s32021736elle_U @ Y @ Ys ) @ Xs ) @ ( listre290852044le_U_o @ R ) )
     => ~ ! [Y2: nat > list_P796095576elle_U > $o,Ys2: list_n2139828004le_U_o] :
            ( ( Xs
              = ( cons_n50929118le_U_o @ Y2 @ Ys2 ) )
           => ( ( member1933006123le_U_o @ ( produc1069574002le_U_o @ Y @ Y2 ) @ R )
             => ~ ( member493452075le_U_o @ ( produc1377086578le_U_o @ Ys @ Ys2 ) @ ( listre290852044le_U_o @ R ) ) ) ) ) ).

% listrel_Cons1
thf(fact_326_listrel_OCons,axiom,
    ! [X2: prover1687215943e_form,Y: prover1687215943e_form,R: set_Pr1189404964e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( member189065477e_form @ ( produc1018812320e_form @ X2 @ Y ) @ R )
     => ( ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( listre1908795590e_form @ R ) )
       => ( member650892795e_form @ ( produc891809686e_form @ ( cons_P1475164433e_form @ X2 @ Xs ) @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre1908795590e_form @ R ) ) ) ) ).

% listrel.Cons
thf(fact_327_listrel_OCons,axiom,
    ! [X2: prover1687215943e_form,Y: nat,R: set_Pr957084504rm_nat,Xs: list_P512754263e_form,Ys: list_nat] :
      ( ( member986698273rm_nat @ ( produc1041874352rm_nat @ X2 @ Y ) @ R )
     => ( ( member1449753665st_nat @ ( produc1897654224st_nat @ Xs @ Ys ) @ ( listre483706378rm_nat @ R ) )
       => ( member1449753665st_nat @ ( produc1897654224st_nat @ ( cons_P1475164433e_form @ X2 @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listre483706378rm_nat @ R ) ) ) ) ).

% listrel.Cons
thf(fact_328_listrel_OCons,axiom,
    ! [X2: nat,Y: prover1687215943e_form,R: set_Pr816919384e_form,Xs: list_nat,Ys: list_P512754263e_form] :
      ( ( member18158113e_form @ ( produc876465968e_form @ X2 @ Y ) @ R )
     => ( ( member1471151041e_form @ ( produc1617574096e_form @ Xs @ Ys ) @ ( listre318297994e_form @ R ) )
       => ( member1471151041e_form @ ( produc1617574096e_form @ ( cons_nat @ X2 @ Xs ) @ ( cons_P1475164433e_form @ Y @ Ys ) ) @ ( listre318297994e_form @ R ) ) ) ) ).

% listrel.Cons
thf(fact_329_listrel_OCons,axiom,
    ! [X2: nat,Y: nat,R: set_Pr1986765409at_nat,Xs: list_nat,Ys: list_nat] :
      ( ( member701585322at_nat @ ( product_Pair_nat_nat @ X2 @ Y ) @ R )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( listrel_nat_nat @ R ) )
       => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( cons_nat @ X2 @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel_nat_nat @ R ) ) ) ) ).

% listrel.Cons
thf(fact_330_listrel_OCons,axiom,
    ! [X2: set_Pr619177522elle_U,Y: nat > list_P796095576elle_U > $o,R: set_Pr1072215906le_U_o,Xs: list_s1200803384elle_U,Ys: list_n2139828004le_U_o] :
      ( ( member1933006123le_U_o @ ( produc1069574002le_U_o @ X2 @ Y ) @ R )
     => ( ( member493452075le_U_o @ ( produc1377086578le_U_o @ Xs @ Ys ) @ ( listre290852044le_U_o @ R ) )
       => ( member493452075le_U_o @ ( produc1377086578le_U_o @ ( cons_s32021736elle_U @ X2 @ Xs ) @ ( cons_n50929118le_U_o @ Y @ Ys ) ) @ ( listre290852044le_U_o @ R ) ) ) ) ).

% listrel.Cons
thf(fact_331_lenlex__append2,axiom,
    ! [R2: set_Pr1189404964e_form,Us2: list_P512754263e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form] :
      ( ( irrefl2121388754e_form @ R2 )
     => ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Us2 @ Xs ) @ ( append1038020460e_form @ Us2 @ Ys ) ) @ ( lenlex1927129340e_form @ R2 ) )
        = ( member650892795e_form @ ( produc891809686e_form @ Xs @ Ys ) @ ( lenlex1927129340e_form @ R2 ) ) ) ) ).

% lenlex_append2
thf(fact_332_lenlex__append2,axiom,
    ! [R2: set_Pr1986765409at_nat,Us2: list_nat,Xs: list_nat,Ys: list_nat] :
      ( ( irrefl_nat @ R2 )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Us2 @ Xs ) @ ( append_nat @ Us2 @ Ys ) ) @ ( lenlex_nat @ R2 ) )
        = ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ Ys ) @ ( lenlex_nat @ R2 ) ) ) ) ).

% lenlex_append2
thf(fact_333_Nil__lenlex__iff1,axiom,
    ! [Ns: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ Ns ) @ ( lenlex1927129340e_form @ R ) )
      = ( Ns != nil_Pr1384483009e_form ) ) ).

% Nil_lenlex_iff1
thf(fact_334_Nil__lenlex__iff1,axiom,
    ! [Ns: list_nat,R: set_Pr1986765409at_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ Ns ) @ ( lenlex_nat @ R ) )
      = ( Ns != nil_nat ) ) ).

% Nil_lenlex_iff1
thf(fact_335_Nil__lenlex__iff2,axiom,
    ! [Ns: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ Ns @ nil_Pr1384483009e_form ) @ ( lenlex1927129340e_form @ R ) ) ).

% Nil_lenlex_iff2
thf(fact_336_Nil__lenlex__iff2,axiom,
    ! [Ns: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Ns @ nil_nat ) @ ( lenlex_nat @ R ) ) ).

% Nil_lenlex_iff2
thf(fact_337_list__ex1__simps_I1_J,axiom,
    ! [P: prover1687215943e_form > $o] :
      ~ ( list_e2123636798e_form @ P @ nil_Pr1384483009e_form ) ).

% list_ex1_simps(1)
thf(fact_338_list__ex1__simps_I1_J,axiom,
    ! [P: nat > $o] :
      ~ ( list_ex1_nat @ P @ nil_nat ) ).

% list_ex1_simps(1)
thf(fact_339_list__ex1__iff,axiom,
    ( list_ex1_nat
    = ( ^ [P4: nat > $o,Xs4: list_nat] :
        ? [X3: nat] :
          ( ( member_nat @ X3 @ ( set_nat2 @ Xs4 ) )
          & ( P4 @ X3 )
          & ! [Y3: nat] :
              ( ( ( member_nat @ Y3 @ ( set_nat2 @ Xs4 ) )
                & ( P4 @ Y3 ) )
             => ( Y3 = X3 ) ) ) ) ) ).

% list_ex1_iff
thf(fact_340_Nil__notin__lex,axiom,
    ! [Ys: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ nil_Pr1384483009e_form @ Ys ) @ ( lex_Pr233218909e_form @ R ) ) ).

% Nil_notin_lex
thf(fact_341_Nil__notin__lex,axiom,
    ! [Ys: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ nil_nat @ Ys ) @ ( lex_nat @ R ) ) ).

% Nil_notin_lex
thf(fact_342_Nil2__notin__lex,axiom,
    ! [Xs: list_P512754263e_form,R: set_Pr1189404964e_form] :
      ~ ( member650892795e_form @ ( produc891809686e_form @ Xs @ nil_Pr1384483009e_form ) @ ( lex_Pr233218909e_form @ R ) ) ).

% Nil2_notin_lex
thf(fact_343_Nil2__notin__lex,axiom,
    ! [Xs: list_nat,R: set_Pr1986765409at_nat] :
      ~ ( member1926390090st_nat @ ( produc1625736153st_nat @ Xs @ nil_nat ) @ ( lex_nat @ R ) ) ).

% Nil2_notin_lex
thf(fact_344_lex__append__leftI,axiom,
    ! [Ys: list_P512754263e_form,Zs2: list_P512754263e_form,R: set_Pr1189404964e_form,Xs: list_P512754263e_form] :
      ( ( member650892795e_form @ ( produc891809686e_form @ Ys @ Zs2 ) @ ( lex_Pr233218909e_form @ R ) )
     => ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Ys ) @ ( append1038020460e_form @ Xs @ Zs2 ) ) @ ( lex_Pr233218909e_form @ R ) ) ) ).

% lex_append_leftI
thf(fact_345_lex__append__leftI,axiom,
    ! [Ys: list_nat,Zs2: list_nat,R: set_Pr1986765409at_nat,Xs: list_nat] :
      ( ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lex_nat @ R ) )
     => ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lex_nat @ R ) ) ) ).

% lex_append_leftI
thf(fact_346_lex__append__left__iff,axiom,
    ! [R: set_Pr1189404964e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ! [X: prover1687215943e_form] :
          ~ ( member189065477e_form @ ( produc1018812320e_form @ X @ X ) @ R )
     => ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Ys ) @ ( append1038020460e_form @ Xs @ Zs2 ) ) @ ( lex_Pr233218909e_form @ R ) )
        = ( member650892795e_form @ ( produc891809686e_form @ Ys @ Zs2 ) @ ( lex_Pr233218909e_form @ R ) ) ) ) ).

% lex_append_left_iff
thf(fact_347_lex__append__left__iff,axiom,
    ! [R: set_Pr1986765409at_nat,Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ! [X: nat] :
          ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ X ) @ R )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lex_nat @ R ) )
        = ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lex_nat @ R ) ) ) ) ).

% lex_append_left_iff
thf(fact_348_lex__append__leftD,axiom,
    ! [R: set_Pr1189404964e_form,Xs: list_P512754263e_form,Ys: list_P512754263e_form,Zs2: list_P512754263e_form] :
      ( ! [X: prover1687215943e_form] :
          ~ ( member189065477e_form @ ( produc1018812320e_form @ X @ X ) @ R )
     => ( ( member650892795e_form @ ( produc891809686e_form @ ( append1038020460e_form @ Xs @ Ys ) @ ( append1038020460e_form @ Xs @ Zs2 ) ) @ ( lex_Pr233218909e_form @ R ) )
       => ( member650892795e_form @ ( produc891809686e_form @ Ys @ Zs2 ) @ ( lex_Pr233218909e_form @ R ) ) ) ) ).

% lex_append_leftD
thf(fact_349_lex__append__leftD,axiom,
    ! [R: set_Pr1986765409at_nat,Xs: list_nat,Ys: list_nat,Zs2: list_nat] :
      ( ! [X: nat] :
          ~ ( member701585322at_nat @ ( product_Pair_nat_nat @ X @ X ) @ R )
     => ( ( member1926390090st_nat @ ( produc1625736153st_nat @ ( append_nat @ Xs @ Ys ) @ ( append_nat @ Xs @ Zs2 ) ) @ ( lex_nat @ R ) )
       => ( member1926390090st_nat @ ( produc1625736153st_nat @ Ys @ Zs2 ) @ ( lex_nat @ R ) ) ) ) ).

% lex_append_leftD
thf(fact_350_can__select__set__list__ex1,axiom,
    ! [P: nat > $o,A4: list_nat] :
      ( ( can_select_nat @ P @ ( set_nat2 @ A4 ) )
      = ( list_ex1_nat @ P @ A4 ) ) ).

% can_select_set_list_ex1
thf(fact_351_maxvar_Osimps_I1_J,axiom,
    ( ( prover1021675886maxvar @ nil_nat )
    = zero_zero_nat ) ).

% maxvar.simps(1)

% Helper facts (5)
thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X2: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
    ! [X2: list_nat,Y: list_nat] :
      ( ( if_list_nat @ $true @ X2 @ Y )
      = X2 ) ).

thf(help_If_3_1_If_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_T,axiom,
    ! [X2: list_P512754263e_form,Y: list_P512754263e_form] :
      ( ( if_lis1812881937e_form @ $false @ X2 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__List__Olist_It__Prover____Mirabelle____icshcajtjh__Oform_J_T,axiom,
    ! [X2: list_P512754263e_form,Y: list_P512754263e_form] :
      ( ( if_lis1812881937e_form @ $true @ X2 @ Y )
      = X2 ) ).

% Conjectures (3)
thf(conj_0,hypothesis,
    ~ ( member_nat @ u @ ( set_nat2 @ ( prover_Mirabelle_sfv @ ( cons_P1475164433e_form @ ( prover571163162e_FAll @ f ) @ s ) ) ) ) ).

thf(conj_1,hypothesis,
    ! [A7: set_Pr619177522elle_U,B4: nat > list_P796095576elle_U > $o,E4: nat > prover_Mirabelle_U] :
      ( ( prover1847600056is_env @ ( produc1069574002le_U_o @ A7 @ B4 ) @ E4 )
     => ( prover1282070756_SEval @ ( produc1069574002le_U_o @ A7 @ B4 ) @ E4 @ ( append1038020460e_form @ s @ ( cons_P1475164433e_form @ ( prover1577896257_finst @ f @ u ) @ nil_Pr1384483009e_form ) ) ) ) ).

thf(conj_2,conjecture,
    ! [E5: nat > prover_Mirabelle_U] :
      ( ~ ( prover1847600056is_env @ ( produc1069574002le_U_o @ a @ b ) @ E5 )
      | ( prover1282070756_SEval @ ( produc1069574002le_U_o @ a @ b ) @ E5 @ ( cons_P1475164433e_form @ ( prover571163162e_FAll @ f ) @ s ) ) ) ).

%------------------------------------------------------------------------------